首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Spring Upload method 文件下传

2012-10-08 
Spring Upload method 文件上传1. org.springframework.web.multipart.commons.CommonsMultipartResolver 

Spring Upload method 文件上传

1. org.springframework.web.multipart.commons.CommonsMultipartResolver 包是Spring中用来处理的上传文件的,我们可以将配置在Spring-context.xml或者action-servlet.xml等配置文件,Spring会自己检查每次请求,如果请求中包含上传的form数据,则会利用此包来解析.例如下面配置:

?

?

public static File uploadFile(MultipartFile mf, String uploadType) throws Exception {if (mf.isEmpty() || mf.getSize() <= 0)return null;CommonsMultipartFile cmf = (CommonsMultipartFile)mf;DiskFileItem fileItem = (DiskFileItem) cmf.getFileItem();String fileType = StringUtils.substringAfter(fileItem.getName(), ".");if (fileType.equalsIgnoreCase(uploadType)) {File file = fileItem.getStoreLocation();fileItem.write(file);return file;}return null;}
?

?

org.apache.commons.fileupload.FileItem 有DefaultFileItem, DiskFileItem 实现类,里面有很多方法,方便我们使用.

?

需要注意是在form提交时,如果用form套form可能会有问题,解决的方法就是用jquery里面ajaxfileupload.

另外如果使用ajax提交方式的话,最好是用异步提交先将文件上传,解析的文件可以放到session中, 之后在callback函数中判断是否上传成功再做下步文件处理.

?

Note:若出现

2009-4-22 16:38:55 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet action threw exception
java.lang.ClassNotFoundException: org.apache.commons.io.output.DeferredFileOutputStream
?at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1387)

?

是因为缺少一个apache的包:commons-io-1.4.jar? 见附件

?

轉載來自:http://www.iteye.com/topic/367074

<!--EndFragment-->

?

<!--EndFragment-->

?

?

热点排行