我好怕自己成为有故事的人,这一天我怕了好久好久,我唯一能做的只有尽人之力。

spring mvc中的文件上传

使用commons-fileupload上传文件所需要的架包有:commons-fileupload 和common-io两个架包支持,可以到Apache官网下砸。

在配置文件spring-mvc.xml中配置上传:

<bean id="multipartResolver"
        class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
//文件上传最大是多少
        <property name="maxUploadSize" value="10485760000" />
//上传文件的编码方式
        <property name="defaultEncoding" value="utf-8" />
//内存中最大缓存大小
        <property name="maxInMemorySize" value="40960" />
</bean>

在对应的jsp页面中主要有两点需要注意,分别问form表单的method=”post”和enctype=”multipart/form-data”,其他的都是平常写的。

在提交到spring mvc中的Controller中对应代码如下所示:

@RequestMapping(value="/upload.do", method=RequestMethod.POST)
    public String upload(@RequestParam("files") MultipartFile[] files) throws IOException{
        for(MultipartFile file:files){
            if(!file.isEmpty()){
            FileUtils.copyInputStreamToFile(file.getInputStream(), new File("E:/file"+File.separator+file.getOriginalFilename()));
            }
        }
        return "uploadok";
    }

代码中添加@RequestParam主要是应对多个文件上传时,如果是单个文件上传可以不写。

posted @ 2015-04-19 22:30  goLazy  阅读(343)  评论(0编辑  收藏  举报
你是否也有自己的故事?埋藏在自己心的最深的地方。