文件下载案例

一、需求分析

 

 其中,浏览器可以直接解析图片,不能解析视频,所以视频的超链接是下载;

加载文件,则需要知道文件的真是路径(ServletContext);

前端:

 

 二、代码实现

 

 

 

 其中,ServletOutputStream字节流会自动刷新,即自动将缓冲区的数据持久化到真实文件流中,不用手动刷新和关闭,servlet服务结束会自动销毁;

三、解决文件乱码问题

1、原因是因为不同的浏览器编码不一样,版本不同兼容性也不同;

解决方法是根据请求头判断浏览器,设置对应的响应;

2、代码实现

 

 这是根据不同的浏览器的请求头信息和含中文的文件名参数列表的工具类;

 

转载于:https://www.cnblogs.com/wmqiang/p/11595272.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/262605.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

[转]TortoiseSVN客户端重新设置用户名和密码

在第一次使用TortoiseSVN从服务器CheckOut的时候,会要求输入用户名和密码,这时输入框下面有个选项是保存认证信息,如果选了这个选项,那么以后就不用每次都输入一遍用户名密码了。 不过,如果后来在服务器端修改了用户名…

python实现截图范围框跟随_教你用Python实现截图和文字识别,就是这么简单

Author: By Runsenkeyboard是一个监控键盘输入的库安装:pip install keyboradimport keyboardimport timefrom PIL import ImageGrabdef screen(): print(开始截图) # 使用微信的截图热键 keyboard.wait(hotkeyalta) # 保存 keyboard.wait(hotkeyent…

进制转化

将N转化成R进制 View Code 1 /*进制转换2 将一个数n装化成R进制(2<R<16)3 4 Sample Input5 7 26 23 127 -4 38 9 Sample output 10 111 11 1B 12 -11 13 */ 14 #include<stdio.h> 15 int main() 16 { 17 int n,r,i,k,t; 18 char f[1000],g[18]{"0123…

JDBC基础和使用

内存泄漏意思就是内存越来越少了&#xff0c;因为垃圾太多&#xff1b; 线程泄露就是线程池中线程越来越少&#xff0c;执行过程中异常&#xff0c;没有返回给线程池&#xff0c;线程池中线程越来越少&#xff1b; 一、概念 二、快速入门 三、JDBC各个类详解 1、driverManager …

车间生产能耗管控方案_SAREN三仁净化工程:锂电池生产车间的设计规范及方案...

对于锂电池厂厂房装修而言&#xff0c;必须做好车间设计&#xff0c;因为锂电池的生产需要一个洁净的车间环境。锂电池厂厂房装修的车间设计要领主要体现在5方面&#xff0c;即&#xff1a;人员与物料布局、确定清洁度等级、确定空间压力差、确定空间空气平衡、确定机械系统布局…

将uglifyjs添加到鼠标右键菜单

之前几天根据YUICompressor和TBCompressor整合到鼠标右键菜单自己将uglifyjs也添加到了右键菜单&#xff0c;下面简单记录下过程。效果如下 uglifyjs添加到鼠标右键菜单配置windows nodepath环境 鼠标右键我的电脑&#xff0c;选择属性→高级属性管理→高级选项卡→环境变量&am…

1标志图片_这四种情况将不再扣分罚款!11月起,全国高速统一限速标志

如果你经常跑高速&#xff0c;那么你可能经常会有这样的经历&#xff1a;本来开车开得好好的&#xff0c;忽然遇到限速标志&#xff0c;赶紧进行紧急刹车。又或者限速标志在不醒目的地方&#xff0c;完全没有发现&#xff0c;等到下了高速才知道自己因为超速被扣分了~这些问题不…

NPOI 菜鸟实践行之根据指定的模板生成Excel 2003格式的文件 (一)

感谢群里的各位朋友的指导和教学&#xff0c;感谢Tony Qu的热心指导&#xff0c;感谢阿修罗兄提供的Excelhelper类 谈谈个人对Excel的理解&#xff0c;结合NPOI&#xff0c;个人水平一般般&#xff0c;菜鸟一只 Excel 打开后&#xff0c;分为sheet-文件簿&#xff0c;Rows-行&a…

Java设计模式12:装饰器模式

装饰器模式 装饰器模式又称为包装&#xff08;Wrapper&#xff09;模式。装饰器模式以多客户端透明的方式扩展对象的功能&#xff0c;是继承关系的一个替代方案。 装饰器模式的结构 通常给对象添加功能&#xff0c;要么直接修改对象添加相应的功能&#xff0c;要么派生子类来扩…

JDBC使用案例

一、结果集中获取数据并对实体set值&#xff0c;封装成对象返回&#xff1b; 2、封装JDBC工具类 只要执行一次的&#xff0c;如读取配置文件&#xff0c;则写静态代码块&#xff1b; 异常抛出要写明方法才可以throw&#xff0c;静态代码块异常只能捕捉try catch; 类加载器两个作…

Android入门:Log介绍

一、Log类介绍 在Logcat视图中查看Android日志信息&#xff1b; (1)Log.v()&#xff1a;任意信息&#xff1b; (2)Log.e()&#xff1a;error信息&#xff1b; (3)Log.w()&#xff1a;warning信息&#xff1b; (4)Log.i()&#xff1a;提示信息&#xff1b; (5)Log.d()&#xff1…

JAVA中的日志框架-log4j的使用

JAVA日志-使用log4j 1. log4j.jar下载 windows下载地址&#xff1a; http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.15/apache-log4j-1.2.15.zip Linux平台下的下载地址&#xff1a; http://download.chinaunix.net/download.php?id12696&ResourceID6256 把l…

PreparedStatement预编译的sql执行对象

一、预编译&#xff0c;防sql注入 其中&#xff0c;设置参数值占位符索引从1开始&#xff1b;在由sql 连接对象创建 sql执行对象时候传入参数sql语句&#xff0c;在执行对象在执行方法时候就不用再传入sql语句&#xff1b; 数据库索引一般是从1开始&#xff0c;java对象一般是从…

Linux下Vi/Vim的使用方法

本文介绍了vi (vim)的基本使用方法&#xff0c;但对于普通用户来说基本上够了&#xff01;i/vim的区别简单点来说&#xff0c;它们都是多模式编辑器&#xff0c;不同的是vim 是vi的升级版本&#xff0c;它不仅兼容vi的所有指令&#xff0c;而且还有一些新的特性在里面。例如语法…

JDBC管理事务

一、事务概念&#xff1a;打包一起的多个步骤的业务操作&#xff0c;要么同事成功&#xff0c;要么同时失败&#xff0c;则需要用事务管理&#xff1b; 二、代码实现 转载于:https://www.cnblogs.com/wmqiang/p/11600776.html

Android数据的四种存储方式SharedPreferences、SQLite、Content Provider和File (二) —— SQLite...

SQLite是一种转为嵌入式设备设计的轻型数据库&#xff0c;其只有五种数据类型&#xff0c;分别是&#xff1a; NULL&#xff1a; 空值 INTEGER&#xff1a; 整数 REAL&#xff1a; 浮点数 TEXT&#xff1a; 字符串 BLOB&#xff1a; 大数据 在SQLite中&#xff0c;并没有专门设…

根据企业信息化应用需求来分析工作流平台的选型

随着企业信息化建设的发展&#xff0c;选择一个能快速满足个性化需求并灵活稳健的系统架构是企业信息化建设成功的基础&#xff0c;这已经成为一个不争的事实。工作流平台软件作为一个中间件产品&#xff0c;在企业信息系统架构中对于业务流程管理、快速开发及高效维护起着相当…

excel 某个单元格不是等于空值_这些稀奇古怪的符号,却是Excel高手们常玩的!...

Excel高手的世界&#xff0c;刚接触excel的同学们&#xff0c;真还不懂。高手们在编写excel函数公式&#xff0c;经常会玩大括号({})、双减号(--)、百分号(%)、连接空值(&"")等等稀奇古怪的符号&#xff0c;看得我们是一愣愣的。当然这些进阶的思路也是excel帮助…

Cookie会话技术

java web动态资源有Servlet和JSP&#xff1b; HTTP协议是无状态的&#xff0c;即每次请求响应和其他的互补相关&#xff0c;所以要共享数据&#xff0c;需要会话技术&#xff1b; 一、概念 二、Cookie会话技术 代码写在服务器端&#xff0c;设置Cookie和发送Cookie以及接收Cook…

all any 或 此运算符后面必须跟_好好跟大家聊聊,最全面的 Python 重点

来源&#xff1a;二十一 链接&#xff1a;https://segmentfault.com/a/1190000018737045由于总结了太多的东西&#xff0c;所以篇幅有点长&#xff0c;这也是我"缝缝补补"总结了好久的东西。Py2 VS Py3print成为了函数&#xff0c;python2是关键字不再有unicode对…