【文件上传】Spring MVC 文件上传
目录:
三、SpringMVC实现文件上传 【可直接看此部分】
1、表单的提交方式 method="POST"
2、表单的enctype属性是多部分表单形式 enctype=“multipart/form-data"
3、表单项(元素)type="file"
<form action="" method="post" enctype="multipart/form-data"> 姓名:<input type="text" name="username"> <br> 头像:<input type="file" name="picFile"> <br> </form>
上传原理:
1、apache提供的file-uplaod工具包【开发中一般不用底层工具包】
2、Servlet3.0【原生servlet开发时使用...】
3、springMVC内置文件上传(底层集成了file-uplaod)常用
1、前端代码:
<form action="${pageContext.request.contextPath}/user/upload" method="post" enctype="multipart/form-data"> 姓名:<input type="text" name="username"> <br> 头像:<input type="file" name="picFile"> <br> <input type="submit" value="文件上传"> </form>
2、后端POM导入apache的文件依赖
<!--文件上传--> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.4</version> </dependency>
3、修改spring-mvc.xml
<!-- 文件上传组件扩展 id="multipartResolver" 此id必须是这个名称... -->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 限定文件的大小 单位是字节(B) 限制大约在5MB左右 -->
<property name="maxUploadSize" value="5024000"></property>
</bean>
4、后端代码
// 文件上传 @RequestMapping("/upload") public String upload(String username, MultipartFile picFile) { System.out.println("普通项:" + username); System.out.println("文件项:" + picFile); System.out.println("文件名:" + picFile.getOriginalFilename()); // 保存到一个指定的磁盘目录 try { picFile.transferTo(new File("d:\\"+picFile.getOriginalFilename())); } catch (IOException e) { e.printStackTrace(); } return "success"; }
本博客参考:
SpringMVC=SpringMVC请求参数以及文件上传:https://blog.csdn.net/appandroid/article/details/106556772
spring boot 上传文件_spring-boot-route(一)Controller接收参数的几种方式:https://blog.csdn.net/weixin_39605894/article/details/111018108
springMVC file文件上传及参数接收:https://www.cnblogs.com/wryd952532573/p/7509428.html