使用SpringMVC框架实现文件上传和下载功能
使用SpringMVC框架实现文件上传和下载功能
(一)单个文件上传
①配置文件上传解释器
<!—配置文件上传解释器 -->
<mvc:annotation-driven></mvc:annotation-driven>
<bean name="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="defaultEncoding" value="UTF-8"></property>
<property name="maxInMemorySize" value="512000000" ></property>
<property name="maxUploadSize" value="20000000"></property>
</bean>
②在Controller层编写映射方法
@RequestMapping(value="upload")
public String upload(MultipartFile file) throws Exception{
File destfile = new File("D:/dir/" + file.getOriginalFilename());
file.transferTo(destfile);
return "/upload.jsp";
}
注意:spring MVC文件上传功能引用了commons-fileupload组件,实现文件上传功能需要引入commons-fileupload和commons-io包
(前端页面很简单,就是一个用来上传文件的input标签,但要注意标签的name属性要和映射方法的参数名对应,如“file”)
(二)多文件上传
@RequestMapping(value="upload")
public String upload(MultipartFile[] file) throws Exception{
for (MultipartFile file : files) {
File destfile = new File("D:/dir/" + file.getOriginalFilename());
file.transferTo(destfile);
}
return "/upload.jsp";
}
(三)文件下载
@RequestMapping(value="/{filename}/download")
public void download(@PathVariable String filename,HttpServletResponse response) throws Exception{
File file=new File("d:/dir/"+filename);
FileInputStream input = new FileInputStream(file);
ServletOutputStream out = response.getOutputStream();
response.addHeader("Content-Disposition", "attachment;filename="+new String(filename.getBytes(),"ISO-8859-1"));
IOUtils.cope(input,out);
}
(注:文件下载需要修改应答头信息,将流以附件形式输出,并设置文件名的编码格式为ISO-8859-1)
———————————————————————————————————————————————————————————————————
The end @ 万有引力+
-
-
-
-
-
使用SpringMVC框架实现文件上传和下载功能的更多相关文章
- SpringMVC框架06——文件上传与下载
1.文件上传 Spring MVC框架的文件上传是基于commons-fileupload组件的文件上传,只不过Spring MVC框架在原有文件上传组件上做了进一步封装,简化了文件上传的代码实现. ...
- JavaWeb中的文件上传和下载功能的实现
导入相关支持jar包:commons-fileupload.jar,commons-io.jar 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用Servlet获取上 ...
- SpringMVC(4):文件上传与下载
一,文件上传 文件上传是项目开发中最常见的功能之一 ,springMVC 可以很好的支持文件上传,但是SpringMVC上下文中默认没有装配MultipartResolver,因此默认情况下其不能处理 ...
- 基于Spring MVC的文件上传和下载功能的实现
配置文件中配置扫描包,以便创建各个类的bean对象 <context:component-scan base-package="com.neuedu.spring_mvc"& ...
- 使用struts2实现文件上传与下载功能
这个问题做了两天,在网上找了很多例子,但是还有一些功能没有实现,暂时先把代码贴出来,以后在做这方面的功能时在修改 文件上传: 一开始我在网上找到基于servlet+jsp环境写的文件上传,但是在将页面 ...
- ExtJS+SpringMVC文件上传与下载
说到文件上传.下载功能,网络上大多介绍的是采用JSP.SpringMVC或者Struts等开源框架的功能,通过配置达到文件上传.下载的目地.可是最近项目要用到文件上传与下载的功能,因为本项目框架采用开 ...
- java实现大文件上传和下载
[文件上传和下载]是很多系统必备功能, 比如PM\OA\ERP等:系统中常见的开发模式有B/S和C/S,而前者主要是通过浏览器来访问web服务器,一般采用七层协议中的[应用层http]进行数据传输,后 ...
- java web学习总结(二十四) -------------------Servlet文件上传和下载的实现
在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 对于文件上传,浏览器在上传的过程中是将文件以流的形式提交到服务器端的,如果直接使用 ...
- (转载)JavaWeb学习总结(五十)——文件上传和下载
源地址:http://www.cnblogs.com/xdp-gacl/p/4200090.html 在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传 ...
随机推荐
- 29个人,耗时84天,硬刚Python,实验结果如下。
真有动漫风格的编程书籍? 上图,就是日本出版的编程书籍.为什么要搞成动漫风格?因为学编程常常会枯燥,难以坚持.法国思想家布封说:所谓天才,就是坚持不懈的意思.大家学编程,转行.涨薪.加强技能,无论是何 ...
- 一张图解释IaaS,PaaS,SaaS
图片来源于MVA教程:快速入门——面向IT专业人员的Windows Azure IaaS
- 纯JS.CSS编写的可拖拽并左右分栏的插件(复制代码就能用)
<!DOCTYPE html><html><head><meta charset="utf-8"><meta http-equ ...
- 如何运用git实现版本控制
https://git-scm.com/download/win git版本控制器下载地址(64位.32位) 官网地址:https://github.com/ Git账号:applepear456 ...
- Idea导包与打包
今天做了一个javavuser协议的性能测试,需要导入jar包,将jar包粘贴到lib下面后不知道怎么加到工程当中, 1,下面分享一下有关导包的流程: 先是在jar 右键,如图 : 选择项目结构,选择 ...
- Spring Boot 2.x中的management.security.enabled=false无效问题
look: https://blog.csdn.net/qq_27385301/article/details/82899303
- 如何在Anoconda Prompt 安装pytorch
一.首先需要安装好Anoconda,具体安装步骤可通过https://www.cnblogs.com/chenfeifen/p/10266012.html查看 由于官方下载更新工具包的速度很慢,因此添 ...
- springmvc配置之mvc:annotation-driven
为了简化springmvc配置,spring同时引入了mvc namespace, 配置了 <mvc:annotation-driven/> spring会默认注册a RequestMap ...
- 用vue脚手架创建bootstrap-vue项目
用vue脚手架创建bootstrap-vue项目 框架的地址:https://bootstrap-vue.js.org/docs/ 第一步 vue init webpack demo第二步 cd de ...
- 比较两个Date类型的数据相差几年
package com.utils; import java.text.DecimalFormat; import java.text.ParseException; import java.text ...