首页IT科技springmvc报错(学习笔记——SpringMVC文件上传与下载)

springmvc报错(学习笔记——SpringMVC文件上传与下载)

时间2025-05-01 09:27:08分类IT科技浏览3670
导读:2023-01-21...

2023-01-21

一           、文件下载

1                 、实现文件下载步骤

(1)准备文件下载相关步骤

(2)将ResponseEntity<T>对象            ,作为方法返回值

(3)为ResponseEntity<T>对象                ,设置三个参数

2     、示例代码

二      、文件上传

1                 、实现文件上传思路

(1)准备工作

①准备文件上传页面

表单的提交方式必须为POST

设置表单enctype属性值为multipart/form-data

表单中包含文件域(type=file)

②导入jar包

<!-- https://mvnrepository.com/artifact/commons-fileupload/commons-fileupload --> <dependency> <groupId>commons-fileupload</groupId> <artifactId>commons-fileupload</artifactId> <version>1.4</version> </dependency>

③装配解析器:CommonsMultipartResolver

<!-- 装配CommonsMultipartResolver--> <bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver" id="multipartResolver"> <!-- 设置字符集--> <property name="defaultEncoding" value="utf-8"></property> <!-- 设置总文件的大小--> <property name="maxUploadSize" value="102400"></property> </bean>

(2)实现步骤

①将type=file(文件域)直接入参:MultipartFile类型即可

②获取文件名称

@Controller public class FileUploadController { @RequestMapping("/fileUploadController") public String fileUploadController(String username, MultipartFile updateFile, HttpSession session){ try { //获取文件名称 String filename = updateFile.getOriginalFilename(); //获取上传路径 String realPath = session.getServletContext().getRealPath("/WEB-INF/upload"); //判断上传路径是否存在(如不存在     ,创建) File filePath = new File(realPath); if(!filePath.exists()){ filePath.mkdirs(); } //实现文件上传 //File.separator:是系统默认的分隔符 File uFile = new File(filePath+File.separator+filename); updateFile.transferTo(uFile); } catch (IOException e) { e.printStackTrace(); } return "success"; } }

三           、文件上传优化

1      、允许同名文件上传

(1)使用UUID解决文件名重复问题

UUID是一个32位16进制随机数(特点:唯一性)

//实现文件上传 //解决重复文件名上传的方式 String uuid = UUID.randomUUID().toString().replace("-", ""); //File.separator:是系统默认的分隔符 File uFile = new File(filePath+File.separator+uuid+filename);

(2)使用时间戳解决文件名重复问题

System.currentTimeMillis()

2                 、设置上传文件大小上限

在装配CommonsMultipartResolver时            ,设置上传文件的上限

<!-- 装配CommonsMultipartResolver--> <bean class="org.springframework.web.multipart.commons.CommonsMultipartResolver" id="multipartResolver"> <!-- 设置字符集--> <property name="defaultEncoding" value="utf-8"></property> <!-- 设置总文件的大小--> <property name="maxUploadSize" value="102400"></property> </bean>
声明:本站所有文章                 ,如无特殊说明或标注     ,均为本站原创发布           。任何个人或组织      ,在未征得本站同意时                 ,禁止复制           、盗用、采集                 、发布本站内容到任何网站                 、书籍等各类媒体平台                 。如若本站内容侵犯了原著者的合法权益           ,可联系我们进行处理     。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
域名whois历史信息(域名历史记录查询网站-147SEO批量域名历史查询网站) qt5.6下载(qt5core.dll丢失解决方法)