1.创建上传页面
<form action="first.do" method="post" enctype="multipart/form-data"> <input type="file" name="uploadFile" value="选择文件" /> <input type="submit" value="提交" /> </form>
2.配置控制器
@Controller public class MyController { // 处理器方法 @RequestMapping(value = "/first.do") public String doFirst(HttpSession session, MultipartFile uploadFile) throws Exception { // 1.获取文件名称 String originalFilename = uploadFile.getOriginalFilename(); // 6.必须选择上传文件 if (uploadFile.getSize() > 0) { // 5.限制文件类型 if (originalFilename.endsWith("jpg") || originalFilename.endsWith("png") || originalFilename.endsWith("txt")) { // 2.获取保存的前路径 String servletContext = session.getServletContext() .getRealPath("upload"); System.out.println(servletContext); // 3.拼接路径 File realPath = new File(servletContext, originalFilename); // 4.保存 uploadFile.transferTo(realPath); return "/two.jsp"; } } return "/error.jsp"; } }
3.配置applicationContext.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation=" http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd "> <!-- 扫描包中注解标注的类 --> <context:component-scan base-package="cn.cnsdhzzl.controller" /> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!-- 设置编码 --> <property name="defaultEncoding" value="UTF-8" /> <!-- 设置上传文件总大小 --> <property name="maxUploadSize" value="5000" /> <!-- 设置单个上传文件大小 --> <property name="maxUploadSizePerFile" value="1000" /> </bean> <mvc:annotation-driven /> </beans>