这篇“怎么在Java Servlet中实现文件下载功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么在Java Servlet中实现文件下载功能”文章吧。
专注于为中小企业提供网站设计、成都网站建设服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业龙山免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了千余家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
1、说明
Servlet是Sun公司开发的用于交互式地浏览和生成数据,生成动态Web的技术。狭义的Servlet是指Java语言实现的一个接口。但一般情况下,我们把实现了Servlet接口的Java程序叫做Servlet
2、使用servlet程序下载
//得到需要下载的文件 String path = this.getServletContext().getRealPath("/upload/9/1/图片1.png"); File file = new File(path); //读取服务器本地的文件 FileInputStream in = new FileInputStream(file); /** * 处理URL编码问题 */ String fileName = file.getName(); //对文件名进行URl编码 fileName = URLEncoder.encode(fileName, "utf-8"); //判断不同浏览器 String userAgent = request.getHeader("user-agent"); String filefix = null; if(userAgent.contains("Trident")){ //IE filefix = "filename="+fileName; }else if(userAgent.contains("Firefox")){ //Firefox filefix = "filename*="+fileName; }else{ filefix = "filename="+fileName; } //告诉浏览器以下载方式打开资源 response.setHeader("Content-Disposition", "attachment;"+filefix); //把本地文件发送给浏览器 byte[] buf = new byte[1024]; int len = 0; while( (len=in.read(buf))!=-1 ){ response.getOutputStream().write(buf, 0, len); } //关闭 in.close();
以上就是关于“怎么在Java Servlet中实现文件下载功能”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。