SpringMVC , Spring , MyBatis 文件上传
学习一下文件上传下载,也可以是图片,感觉有一个世纪没玩过上传下载了,边敲代码边记录,请各路大神指教:
-----------------------------------------------------------------------这里是文件下载---------------------------------------------------------------
----------------------------------------http://www.cnblogs.com/yueguanguanyun/p/7794946.html--------------------------------------
参考:http://blog.csdn.net/wjycgl/article/details/55509480
1:jsp页面from表单:这里有两个必须条件。必须是post方式提交。2:必须有enctype属性,enctype="multipart/form-data"
2:maven的pom.xml中引入jar包
<!--文件上传-->
- <dependency>
- <groupId>commons-fileupload</groupId>
- <artifactId>commons-fileupload</artifactId>
- <version>1.3.2</version>
- </dependency>
3:在spring的servlet视图解析器下面定义CommonsMultipartResolver文件解析器,就是加入这个的时候运行项目,如果没有fileuload相关的jar包就会报错。
-
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver" >
<!--设置默认编码-->
<property name="defaultEncoding" value="UTF-8"/>
<!--上传文件最大大小5m-->
<property name="maxUploadSize" value="5242440"/>
<!-- 允许文件上传的最大尺寸(阈值),低于此值,只保留在内存里,超过此阈值,生成硬盘上的临时文件 -->
<property name="maxInMemorySize" value="4096"/>
<!--设置临时文件保存路径-->
<property name="uploadTempDir" value="fileUpload/temp"/>
</bean>
4:控制器类,请求处理方法参数一定要有 “MultipartFile file”或“CommonsMultipartFile file”,并加注解@RequestParam
5://获取文件名
String fileName = file.getOriginalFilename();
//获取文件类型
String fileType = file.getContentType();
//复制到指定位置
file.transferTo(new File("F://img",fileName));
return "success";
写的比较简单没有判断什么的,这样就可以实现了。