SpringMVC学习--文件上传
Posted ngulc
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SpringMVC学习--文件上传相关的知识,希望对你有一定的参考价值。
- 简介
文件上传是web开发中常见的需求之一,springMVC将文件上传进行了集成,可以方便快捷的进行开发。
- springmvc中对多部件类型解析
在 页面form中提交enctype="multipart/form-data"的数据时,需要springmvc对multipart类型的数据进行解析。在springmvc.xml中配置multipart类型解析器。
1 <!-- 文件上传 --> 2 <bean id="multipartResolver" 3 class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> 4 <!-- 设置上传文件的最大尺寸为5MB --> 5 <property name="maxUploadSize"> 6 <value>5242880</value> 7 </property> 8 </bean>
- 加入上传图片的jar
边的解析内部使用下边的jar进行图片上传。
- 创建图片虚拟目录存储图片
在tomcat上配置图片虚拟目录,在tomcat下conf/server.xml中添加:
1 <Context docBase="F:\\develop\\upload\\temp" path="/pic" reloadable="false"/>
访问http://localhost:8080/pic即可访问F:\\develop\\upload\\temp下的图片。
- Controller代码
1 //商品修改提交 2 @RequestMapping("/editItemSubmit") 3 public String editItemSubmit(Items items, MultipartFile pictureFile)throws Exception{ 4 5 //原始文件名称 6 String pictureFile_name = pictureFile.getOriginalFilename(); 7 //新文件名称 8 String newFileName = UUID.randomUUID().toString()+pictureFile_name.substring(pictureFile_name.lastIndexOf(".")); 9 10 //上传图片 11 File uploadPic = new java.io.File("F:/develop/upload/temp/"+newFileName); 12 13 if(!uploadPic.exists()){ 14 uploadPic.mkdirs(); 15 } 16 //向磁盘写文件 17 pictureFile.transferTo(uploadPic); 18 ... 19 }
以上是关于SpringMVC学习--文件上传的主要内容,如果未能解决你的问题,请参考以下文章
学习SpringMVC必知必会~springmvc的数据校验表单标签文件上传和下载