第一点:method=‘post’
第二点:enctype=‘multipart/form-data’
第三点:type=‘file’
代码实现过程如下:
一:在pom.xml中引入jar包,如下:
<dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.4</version> </dependency>
二:在resoures中 创建文件上传解析器对象,如下:
<!--文件上传解析器 这个bean的id是固定,不能动--> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <!--单次上传文件大小,单位10M =10* 1024 *1024 B--> <property name="maxUploadSize" value="10485760"></property> </bean>
三:在页面中的代码实现:
(单文件上传)
<!--单文件上传-->l <form action="${pageContext.request.contextPath}/indexController/demol5" method="post" enctype="multipart/form-data"> <input type="file" name="uploadFile"> <input type="submit" value="单文件上传"> </form>
后台代码:
@RequestMapping("/demol5") public String demol5(MultipartFile uploadFile) throws IOException { System.out.println(uploadFile.getOriginalFilename()); System.out.println(uploadFile.getSize()); String newFile= UUID.randomUUID().toString()+uploadFile.getOriginalFilename(); //指定上传的位置 File file = new File("C:/app/"+newFile); //文件复制 uploadFile.transferTo(file); return "success"; }
(多文件上传)
<!--多文件上传--> <form action="${pageContext.request.contextPath}/indexController/demol6" method="post" enctype="multipart/form-data"> <input type="file" name="uploadFile" multiple> <input type="submit" value="多文件上传"> </form>
后台代码:
@RequestMapping("/demol6") public String demol6(MultipartFile [] uploadFile) throws IOException { for (MultipartFile multipartFile : uploadFile) { String filename = multipartFile.getOriginalFilename(); String newName=UUID.randomUUID().toString()+filename; File file = new File("C:/app/"+newName); multipartFile.transferTo(file); } return "success"; }