文件下载
来源:互联网 发布:伤感歌曲网络歌曲大全 编辑:程序博客网 时间:2024/06/05 04:08
文件的下载有2种方式:
a)通过超链接直接下载
<ahref="./uploadFiles/today.txt">today</a>
<a href="./uploadFiles/today.rar">today</a>
这种方式十分方便,但是如果浏览器可以识别该文件,例如txt,png,jpg等则会直接打开;若浏览器不识别文件格式,例如压缩包等,则会下载。
但是,这种方式会将服务器目录直接暴露给最终用户,给网站带来一些不安全因素。
地址中中文乱码问题需要解决???
b)通过servlet程序下载
前端代码通过超链接访问servlet:
<a href="./downloadTest/myDownload?filename=today.txt">
today.txt</a>
servlet代码:
//获得请求文件名 String filename = request.getParameter("filename"); System.out.println(filename); //设置文件MIME类型 response.setContentType(getServletContext().getMimeType(filename)); //设置Content-Disposition response.setHeader("Content-Disposition", "attachment;filename="+filename); //读取目标文件,通过response将目标文件写到客户端 //获取目标文件的绝对路径 String fullFileName = getServletContext().getRealPath("/uploadfiles/" + filename); //读取文件 InputStream in = new FileInputStream(fullFileName); OutputStream out = response.getOutputStream(); //写文件 int b; while((b=in.read())!= -1) { out.write(b); } in.close(); out.close();
阅读全文
0 0
- 下载图片,下载文件
- 文件下载
- 文件下载
- 文件下载
- 文件下载
- 文件下载
- 文件下载
- 下载文件
- 文件下载
- 下载文件
- 文件下载
- 文件下载
- 下载文件
- 文件下载
- 下载文件
- 下载文件
- 文件下载
- 下载文件
- Eclipse引入jar包三种方法
- Java实现-超级丑数
- 新型PPT钓鱼攻击分析(含gootkit木马详细分析)
- MySql事件
- 直接将datatable插入数据库中
- 文件下载
- javaweb学习总结——监听器(Listener)学习二
- 未定义行为:不只是编程语言
- struts2的s:iterator标签中的status
- 剑指offer面试题25:合并两个排序的链表-java
- 安卓卡片式、数量可变自定义RadioButton
- CSS基本选择器
- java关于函数重载(overload)和函数覆盖(override)区别
- 使用EL表达式获取cookie和cookie中的信息