个人博客网:https://wushaopei.github.io/ (你想要这里多有)
一 、 文件上传在SpringMVC中如何实现:
- 准备一个文件上传的表单
- 导入文件上传需要的jar包
- commons-fileupload-1.2.1.jar、
- commons-io-1.4.jar
3. 配置文件上传解析器 CommonsMultipartResolver
4 . 配置Controller控制器的代码
二 、 创建Web工程
三、 准备一个文件上传的表单
在 WebContent目录下创建 result.jsp 页面,并创建一个form表单
<form action="${pageContext.request.contextPath }/upload" method= "post" enctype="multipart/form-data">
用户名:<input type="text" name="username"/><br/>
头像: <input type="file" name= "photo"><br/>
<input type="submit">
</form>
四、 导入文件上传需要的jar包
commons-fileupload-1.2.1.jar
commons-io-1.4.jar
commons-logging-1.1.3.jar
spring-aop-4.3.18.RELEASE.jar
spring-beans-4.3.18.RELEASE.jar
spring-context-4.3.18.RELEASE.jar
spring-core-4.3.18.RELEASE.jar
spring-expression-4.3.18.RELEASE.jar
spring-web-4.3.18.RELEASE.jar
spring-webmvc-4.3.18.RELEASE.jar
五、 配置文件上传解析器
<!-- 配置文件上传解析器
CommonsMultipartResolver负责解决上传的数据,得到用户希望的结果<br/>
id="multipartResolver" id值必须为:multipartResolver
-->
<bean id="multipartResolver" class="rg.springframework.web.multipart.commons.CommonsMultipartResolver">
<!-- 配置上传解析用的字符集,防止出现乱码 -->
<property name="defaultEncoding" value="UTF-8"></property>
</bean>
六、 编写文件上传的Controller 控制器中的代码
@RequestMapping("/upload")
public String upload(@RequestParam(name = "username") String username,
@RequestParam(name = "photo") MultipartFile photo) {
System.out.println("用户名是:" + username);
// 获取文件名
System.out.println("上传的文件名是:" + photo.getOriginalFilename());
try {
photo.transferTo(new File("E:\\" + photo.getOriginalFilename()));
} catch (Exception e) {
e.printStackTrace();
}
return "/result.jsp";
}
链接:https://pan.baidu.com/s/1D3OX0U4t1omac-UPEm8qBA
提取码:jw73