一. 使用Tomcat默认的servlet去下载静态资源 

1. 直接以超链接的方式下载, 不写任何代码, 就能够下载东西下来。

<a href="Download/shake.wav">shake.wav</a><br/>

<a href="Download/logo.png">logo.png</a><br/>

<a href="Download/apache-tomcat7.zip">apache-tomcat7.zip</a>

2. Tomcat里面有一个默认的。这个DefaultServlet 专门用于处理放在Tomcat服务器上的静态资源。

3. 新建一个Download的Web工程

4. 在WebContent下新建一个Download的目录, 放入几个文件

5. 新建一个index.html

6. 编写index.html

<!DOCTYPE html>
<html><head><meta charset="UTF-8" /><title>下载</title></head><body><a href="Download/shake.wav">shake.wav</a><br/><a href="Download/logo.png">logo.png</a><br/><a href="Download/apache-tomcat7.zip">apache-tomcat7.zip</a><br/></body>
</html>

7. 部署运行

8. 点击shake.wav, chrome浏览器在网页中打开了它

9. 点击logo.png, chrome浏览器在网页中打开了它

10. 点击apache-tomcat7.zip, 进行下载

二. 使用自己的Servlet去下载文件, 而不是展示

1. 编写index.html

2. 新建一个Download.java类

3. 编写Download.java类

package com.lywgames.myservlet;import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;public class Download extends HttpServlet {private static final long serialVersionUID = 1L;@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {// 获取文件名字String filename = req.getParameter("filename");// 让浏览器收到这份资源的时候, 以下载的方式提醒用户, 而不是直接展示。 resp.setHeader("Content-Disposition", "attachment; filename="+filename);// 获取这个文件在Tomcat里面的绝对路径地址String path = getServletContext().getRealPath("Download/" + filename);InputStream is = new FileInputStream(path);OutputStream os = resp.getOutputStream();int len = 0 ;byte[] buffer = new byte[1024];while((len = is.read(buffer)) != -1){os.write(buffer, 0, len);}os.close();is.close();}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}

4. 编写web.xml

5. 部署运行项目, png和wav文件也可以下载

013_下载静态资源相关推荐

  1. vue中使用a标签下载静态资源文件(比如excel、pdf等)后端不参与

    问题描述 平常我们在项目中需要做下载文件的功能,比如下载excel表格.比如下载pdf文件.比如下载word文档,这样的功能,一般是后端做,即:后端返回一个流文件.或者返回一个url地址- 但是,实际 ...

  2. 入门SpringBoot-关于那些静态资源(四)

    与之前开发手动下载静态资源 如jquery bootstrap导入项目相比,springboot采用​ webjars:以jar包的方式引入静态资源. 在官网中提供了常见前端框架的maven依赖.   ...

  3. springboot 应用中静态资源下载

    一. 场景介绍 Excel模板静态资源在,应用中的static文件夹中,文件名称包含中文; 需求:页面直接访问下载Excel模板. 二.目录结构 三.后台代码 1 @GetMapping(" ...

  4. springboot访问下载/resource/static下的静态资源;下载excel文件损坏,打不开

    放文件 直接把文件放到resource下的static文件夹中 看编译结果 启动之后看看是否被编译了 访问,下载 然后在浏览器输入下面地址就能自动下载文件了 http://localhost:8002 ...

  5. java服务器下载jpg等静态资源方法

    浏览器下载服务器上jpg等静态资源方法 /*** 服务器下载静态文件* @param request* @param response* @param filePath* @param fileNam ...

  6. 前端vue/h5下载Springboot后端静态资源(txt/word/excel)

    1.首先Springboot需要配置跨域和静态资源static目录存放对应的资源文件(txt等) import org.springframework.context.annotation.Bean; ...

  7. 解决nginx静态资源无法预览只能下载的问题

    解决nginx静态资源无法预览只能下载的问题 场景介绍 项目需求:用户登录web系统之后,如果有系统新消息产生,需用提示音告知用户,并且用户可以上传自己的个性化提示声音. 解决方案:用nginx静态代 ...

  8. webpack打包缓存_【第835期】Webpack 的静态资源持久缓存

    原标题:[第835期]Webpack 的静态资源持久缓存 前言 你现在还在休假吗?早读课节前以web pack漫谈结尾,今年就以web pack开始吧.今日早读文章由众成翻译@yanni4night带 ...

  9. nginx配置静态资源html,通过nginx服务器访问静态资源(示例代码)

    通过nginx服务器访问静态资源 引言 之前在做毕设的时候接触过nginx,那时候是用来做前后端分离的.一转眼都快一年了,nginx的相关内容也忘的差不多了. 有过接触前端的同学都知道,直接在标签的s ...

最新文章

  1. infopath java包_InfoPath 2013 修补程序包 (Ipeditor x none.msp) 的描述︰ 2014 年 4 月 8,...
  2. 十年研发经验嵌入式工程师书籍推荐
  3. TP-Link無線路由器(分享器)頻寬控管
  4. python object的实例是什么_Python-向现有对象实例添加方法
  5. 互掐!美团“抛弃”支付宝,背后的真相到底是啥?
  6. java动态变量名反射_Java动态性—反射 - Eclipse666的个人空间 - OSCHINA - 中文开源技术交流社区...
  7. 知识点old1908
  8. struts2漏洞修复
  9. 【穷举】用c#实现一个数组(1,1,2,2,3,3,4,4)排列,每两个相同数字中间都间隔了这个数字个数...
  10. silverlight读取mysql_silverlight访问数据库
  11. 【Datawhale】[task2]2.3代码示例
  12. 如何修改web浏览器title文字及icon
  13. leetcode-53-maxium subarray
  14. 电容的作用?电容器的作用?
  15. Vmware私有云平台搭建(1)
  16. matlab shading颜色设置,关于matlab中pcolor显示图片时的shading设置问题
  17. 京东回归港股不是上岸,刘强东还有更大的杀招!
  18. excel中怎么拆分表格
  19. HTML5期末大作业:电影网站设计——电影资讯博客(5页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页规划与设计 web学生网页设计作业源码
  20. 爬取指定网页并制作词云图

热门文章

  1. 可能用到的C# WinForm技术小结
  2. 微软Windows 8最新幻灯片泄露
  3. sdwan能取代mpls吗?—Vecloud
  4. php引擎文件php.ini优化参数
  5. python实现抓取必应图片设置桌面
  6. JMeter常用组件
  7. 逐个访问URL的每个查询字符串参数
  8. xampp的Apache无法启动解决方法
  9. Android开发人员不得不收集的代码(不断更新中...)
  10. Linux PHP增加JSON支持及如何使用JSON