文件上传
1 原理:

2 springmvc完成文件上传
依赖
<!--文件上传的依赖-->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.5</version>
</dependency>
文件上传的网页
<body>
<%--文件上传的表单提交方式必须为post.
enctype="multipart/form-data"表单的编码类型必须设置为文件类型
--%>
<form action="/upload" method="post" enctype="multipart/form-data">
<%--输入框的类型必须为file类型。--%>
选择上传的文件: <input type="file" name="myfile"/><br>
<input type="submit" value="提交"/>
</form>
</body>
</html>
文件上传的接口
@RequestMapping("/upload")
public String upload(MultipartFile myfile, HttpServletRequest request) throws Exception{ //把上传的文件封装到该对象中了。
//1.获取文件存放的路径,
String contextPath = request.getSession().getServletContext().getRealPath("/images");
//2. 根据上面文件再服务器存放的路径创建一个文件对象
File file=new File(contextPath);
//3.判断该目录是否存在
if(!file.exists()){
file.mkdirs();//创建该目录
}
//4. 获取上传的文件名.
String filename = UUID.randomUUID().toString().replace("-","")+ myfile.getOriginalFilename();
//5. 把上传的文件转移到服务所在的指定目录下。
myfile.transferTo(new File(contextPath+"/"+filename));
return "main";
}
修改springmvc配置文件
<!--文件上传解析器-->
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!--设置文件上传的最大的大小 单位为字节。10M 1G===>1024M===1024kb===1024b-->
<property name="maxUploadSize" value="10485760"/>
</bean>
浙公网安备 33010602011771号