一、建立一个简单的jsp页面。

我们在建好的jsp的页面中加入一个超链接:<a href="${pageContext.request.contextPath}/download">下载</a>

二、在控制层写入以下代码:

	@RequestMapping("/download")
public ResponseEntity<byte[]> String(HttpServletRequest request) throws IOException{
byte[] size=null;
ServletContext servletContext =request.getServletContext();
String filename="nobody.mp3";
String path=servletContext.getRealPath("/WEB-INF/"+filename);
File file=new File(path);
ResponseEntity<byte[]> response=null;
InputStream in=null;
try {
in= new FileInputStream(file);
size= new byte[in.available()];
in.read(size);
HttpHeaders headers= new HttpHeaders();
filename=new String(filename.getBytes("gbk"),"iso8859-1");
headers.add("Content-Disposition", "attachment;filename="+filename);
HttpStatus status=HttpStatus.OK;
response=new ResponseEntity<byte[]> (size,headers,status);
} catch (FileNotFoundException e) { e.printStackTrace();
}finally{
in.close();
}
return response; }

三、在服务器指定的位置加入你需要下载的文件。这里我们在服务器里WEB-INF下导入一首歌。如图:

四、下面运行我们的程序。

然后点击超链接,浏览器就会下载这首歌,然后你就能在你下载的位置找到这首歌并且可以正常的听!

SpringMVC中文件的上传(上传到服务器)和下载问题(二)--------下载的更多相关文章

  1. springmvc中文件跨服务器传输的方法

    //1.首先在tomcat的新端口上重新开启一个tomcat服务器fileuploadserver服务器,并且在webapps下新建一个uploads文件夹 //2.在业务服务器上书写前端页面和后端的 ...

  2. SpringMVC中文件上传

    在SpringMVC中上传文件是比较方便的.主要分为以下几个步骤: 1)在applicationContext.xml中增加相应类的引用 <bean id="multipartReso ...

  3. SpringMvc中文件的上传

    本文转自:http://www.cnblogs.com/fjsnail/p/3491033.html 三个方法没有都测试,先get再说 第一个方法慢不知道是不是因为写的代码是按字节读取的,没有用Buf ...

  4. SpringMVC中文件的上传(上传到服务器)和下载问题(一)

    一.今天我们所说的是基于SpringMVC的关于文件的上传和下载的问题的解决.(这里所说的上传和下载都是上传到服务器与从服务器上下载文件).这里的文件包括我们常用的各种文件.如:文本文件(.txt), ...

  5. django中文件(头像)上传

    一些常用的小功能,记录下来 先说一种上传功能. 模板表单 <form enctype="multipart/form-data" name="form1" ...

  6. springMvc中自定义bean转换接收前台传的参数

    转载:https://blog.csdn.net/u013476435/article/details/81538099 因前端整体传参时,参数名都不是驼峰写法,类似 music_name,music ...

  7. linux 中文件权限和磁盘管理、linux服务器项目如何部署

    chmod chmod 421 xx.txt //4=r,2=w,1=x df 查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 df常用参数有 –i -h -k ...

  8. 一起学SpringMVC之文件上传

    概述 在Web系统开发过程中,文件上传是普遍的功能,本文主要以一个简单的小例子,讲解SpringMVC中文件上传的使用方法,仅供学习分享使用,如有不足之处,还请指正. 文件上传依赖包 如下所示,文件上 ...

  9. MAC 上编译安装nginx-rtmp-module 流媒体服务器

    MAC 上编译安装nginx-rtmp-module 流媒体服务器 记录踩坑过程 下载nginx和nginx-rtmp-module wget http://nginx.org/download/ng ...

随机推荐

  1. 初步研究一下sourceTree

    今天研究sourceTree,在此小结一下 1.下载链接:https://www.atlassian.com/software/sourcetree 2.安装,注册账户登录,连接到GitHub账号上, ...

  2. 第四章:Django 模型 —— 设计系统表

    1. Django框架提供了完善的模型(Model )层来创建和存储数据,每一个模型对应数据库中的唯一的一张表. 2. Django 模型基础知识: .每一本模型是一个Python类,继承了djang ...

  3. js实现日期格式化

    <!DOCTYPE html><html><head> <meta charset="utf-8"> <meta http-e ...

  4. Java 数据类型在实际开发中应用二枚举

    在实际编程中,往往存在着这样的"数据集",它们的数值在程序中是稳定的,而且"数据集"中的元素是有限的.在JDK1.5之前,人们用接口来描述这一种数据类型. 1. ...

  5. Sass学习笔记(补充)

    阅读目录 1. Sass和SCSS的区别 2. @while循环 3. @at-root 4. @content 5. 凸显注释 6. CSS输出样式 7. 重置浏览器样式 8. Sass调试和@de ...

  6. docker~docker-machine的介绍

    回到目录 国外的hub.ducker.com速度确实有些慢,还好,有咱们的阿里云,今天和大家聊聊通过添加docker-machine来改变docker的hub服务器,最终来加速咱们下载镜像的速度! 工 ...

  7. Oozie安装时放置Mysql驱动包的总结(网上最全)

    不多说,直接上干货! 对于在oozie里放置Mysql驱动包的总结 根据网上的参考以及我个人经验安装的使用 (1)放一份到$OOZIE_HOME/libext下 (是 mysql-connector- ...

  8. (转)Java线程:大总结

    Java线程:大总结   Java线程是Java语言中一个非常重要的部分,Java5之前,多线程的语言支持还是比较弱的,内容也较少,写一个复杂的多线程程序是相当有挑战性的.   在Java5以后,Ja ...

  9. Python初识(PyMysql实例)

    为什么学习python呢,好吧,其实我也不知道,反正就是想学习了. 资料什么的全都low了,传值博客免费的就够.不要问我为什么,我基本上都是找的免费的视频.然后传值博客的最多,我真的不是打广告. py ...

  10. ajax-jquery方法-初步入门01(整理)

    -----------------------------------2017.07.21写----------------------------------------- 相比较原生javascr ...