用JSP来实现文件下载功能的几种方式

JSP文件上传与下载功能实现指南 本文还有配套的精品资源,点击获取 简介:本文详细介绍了如何利用JSP技术实现Web应用程序中的文件上传和下载功能。内容涵盖了从设计前端表单到处理后端逻辑,再到文件存储以及安全和性能优化的完整流程。文章重点包括表单设计、文件上传处理、文件存储、下载链接生成、下载处理、项目结构与配置,以及安全性和优化建议。通过本指南,开发者可以学习到JSP实现文件交互的关键技术和最佳实践。 ... 阅读详情

用JSP来实现文件下载功能的几种方式

 

1.最直接最简单的,方式是把文件地址直接放到html页面的一个链接中。这样做的缺点是把文件在服务器上的路径暴露了,并且还无法对文件下载进行其它的控制(如权限)。这个就不写示例了。

2.在服务器端把文件转换成输出流,写入到response,以response把文件带到浏览器,由浏览器来提示用户是否愿意保存文件到本地。

3.既然是JSP的话,还有一种方式就是用Applet来实现文件的下载。不过客户首先得信任你的这个Applet小程序,由这个程序来接受由servlet发送来的数据流,并写入到本地。

Servlet端示例

public void service(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException {res.setContentType(" text/plain ");OutputStream outputStream = null;try {outputStream = res.getOutputStream();//把文件路径为srcFile的文件写入outputStream中popFile(srcFile, outputStream)) ;} catch (IOException e) {e.printStackTrace(); }}

JApplet端示例

URLConnection con;try {//url是被调用的SERVLET的网址 如 *.do con = url.openConnection();con.setUseCaches(false);con.setDoInput(true);con.setDoOutput(true);con.setRequestProperty("Content-Type","application/octet-stream");InputStream in = con.getInputStream();ProgressMonitorInputStream pmInputStream = new ProgressMonitorInputStream(pane, "正在从服务器下载文件内容", in);ProgressMonitor pMonitor = pmInputStream.getProgressMonitor();pMonitor.setMillisToDecideToPopup(3);pMonitor.setMillisToPopup(3);//localfilepath本地路径,localstr文件文件夹,filename本地文件名String localfilepath = localstr filename ;//方法saveFilsaveFilee是把输入流pmInputStream写到文件localfilepath中 if(saveFilsaveFilee(localfilepath,pmInputStream)){     openLocalFile(localfilepath);}

4.顺便把JApplet上传文件的代码也贴上来.

JApplet端示例

URLConnection con;try {con = url.openConnection();//url是被调用的SERVLET的网址 如 *.do    con.setUseCaches(false);con.setDoInput(true);con.setDoOutput(true);con.setRequestProperty("Content-Type","application/octet-stream"); OutputStream out = con.getOutputStream();//localfilepath本地路径,localstr文件文件夹,filename本地文件名String localfilepath = localstr filename;//文件getOutputStream是把文件localfilepath写到输出流out中getOutputStream(localfilepath,out);InputStream in = con.getInputStream();return true;}catch (IOException e) {System.out.println("文件上传出错!");e.printStackTrace();}servlet端代码示例 public void service(HttpServletRequest req, HttpServletResponse res)throws ServletException, IOException {res.setContentType(" text/plain ");InputStream inputStream = null;try {inputStream = res.getInputStream();//把输入流inputStream保存到文件路径为srcFile的文件中writefile(srcFile, inputStream);} catch (IOException e) {e.printStackTrace();}} // end service

总结:在文件的传输中是流的形式存在的,在硬盘上是文件的形式存在的。我们要做的只是通过HttpServletRequest和HttpServletResponse,或者是response和request来发送流和读取流。以及把文件转换成流或把流转换成文件的操作。

用Jsp来实现文件下载功能的几种方式 立即下载

相关推荐

jsp页面实现文件的下载功能

实现jsp页面的下载功能,文档下载,文件下载,软件下载,测试过好用。

jsp中实现文件上传下载的三种解决方案(推荐)

大致实现原理:当enctype的值是multipart/form-data时,浏览器会把每个表单项进行分割,分割成不同的部件,以boundary的值为分割标识,这个标识的字符串是随机生成的,最后一个表单项的分割标识字符串末尾会多两个”- -“,代表结束。支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,ie8,ie9,Chrome,Firefox,360安全浏览器,并且刷新浏览器后仍然能够续传,重启浏览器(关闭浏览器后再打开)仍然能够继续上传,重启电脑后仍然能够上传。

Mr_Zang666的博客 2261

JSTL的各种标签文件和struts的标签文件,带strtus.jar包

JSTL的各种标签文件和struts的标签文件,带strtus.jar包c-1_0.tld,c-1_0-rt.tld,c.tld,fmt-1_0.tld,fmt-1_0-rt.tld,fmt.tld,fn.tld,permittedTaglibs.tldscriptfree.tld,sql-1_0.tld,sql-1_0-rt.tld,sql.tld,x-1_0.tld,x-1_0-rt.tld,x.tld,struts-logic.tld,struts-html.tld,struts-tiles.tld struts-bean.tld,struts-nested.tld,struts.jar

jsp实现文件上传下载功能

文件上传首先得引入两个jar包,建议在mvn库中下载,下载完粘贴到lib目录下 首先写上传文件的jsp界面 <form action="UpLoadServet" method="post" enctype="multipart/form-data"> <font color="white" size="5px">文件上传功能(将你的照片,音乐

仲夏的博客 3万+

jsp文件下载

解决文件下载时,浏览器默认打开文件 解决文件下载时,浏览器默认打开文件

jsp页面文件下载功能实现

jsp页面文件下载功能实现,简单实用,快点下载吧!

jsp实现文件下载

jsp实现文件下载,Resource interpreted as Document but transferred with MIME type application/octet-stream: "http://localhost:8090/testcaseproduct/NewFile".这是由于chrome问题,不允许访问本地的文件,如果你复制里面的连接http://localhost:8090/testcaseproduct/NewFile,打开一个新的浏览器窗口,把链接粘进去,回车就会有文件下载

qq_33142257的博客 2235

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

Yuanbaokk的博客 7258

jsp实现下载文件

jsp实现下载文件功能

qq_58863774的博客 1656

从零到一:R与RStudio的安装与配置全攻略

本文提供了R与RStudio的完整安装与配置指南,涵盖Windows、Mac和Linux三大操作系统。从基础环境搭建到高级性能优化,详细介绍了R语言安装、RStudio配置、项目管理和实用技巧,帮助数据科学初学者快速搭建高效的分析工作环境。

weixin_29062671的博客 421

ROS环境下UR机械臂与Realsense相机手眼标定实战指南

本文提供了在ROS环境下,对UR机械臂与Realsense相机进行手眼标定的完整实战指南。详细介绍了从环境搭建、软件包安装、硬件配置到分步数据采集与计算的完整流程,并分享了常见的避坑技巧与精度优化方法,旨在帮助开发者高效、准确地完成标定,为后续的机器人视觉应用奠定坚实基础。

sunny的博客 648

简单介绍用JSP来实现文件下载功能的几种方式

<br />1.最直接最简单的,方式是把文件地址直接放到html页面的一个链接中。这样做的缺点是把文件在服务器上的路径暴露了,并且还无法对文件下载进行其它的控制(如权限)。这个就不写示例了。 <br />2.在服务器端把文件转换成输出流,写入到response,以response把文件带到浏览器,由浏览器来提示用户是否愿意保存文件到本地。<br />3.既然是JSP的话,还有一种方式就是用Applet来实现文件的下载。不过客户首先得信任你的这个Applet小程序,由这个程序来接受由servlet发送来的数据

JavaPromise的专栏 632

常用本体建模工具

常用本体建模工具: Apollo、OntoStudio、TopBraid Composer、Semantic Turkey、Knoodl、Chimaera、OliEd、WebODE、Kmgen和DOME Protégé Protégé[1]是一款由斯坦福大学编写并维护的开源本体建模和编辑工具,其支持Web版本和PC版本,使用OWL语言(关于OWL的详细介绍可参看前文2.1节内容)对知识进行表示,读者可以通过Protégé的官方网站访问Web版本或下载桌面版本。Protégé最早开发于1987年,最初目的是

qq_40503347的博客 6173

java文件下载代码jsp_用JSP来实现文件下载功能的几种方式

1.最直接最简单的,方式是把文件地址直接放到html页面的一个链接中。这样做的缺点是把文件在服务器上的路径暴露了,并且还无法对文件下载进行其它的控制(如权限)。这个就不写示例了。2.在服务器端把文件转换成输出流,写入到response,以response把文件带到浏览器,由浏览器来提示用户是否愿意保存文件到本地。3.既然是JSP的话,还有一种方式就是用Applet来实现文件的下载。不过客户首先得信...

weixin_33250594的博客 568

图解转置卷积原理

声明:本文大部分搬运自【机器学习】详解 转置卷积 (Transpose Convolution) 感谢博主花与人间事同,本人只是在博主原创文章上做补充以及添加一些自己的理解。 1 转置卷积的背景 通常,对图像进行多次卷积运算后,特征图的尺寸会不断缩小。而对于某些特定任务 (如图像分割和图像生成等),需将图像恢复到原尺寸再操作。这个将图像由小分辨率映射到大分辨率的尺寸恢复操作,称为上采样 (Upsample),如下图所示: 上采样方法有很多,详见【图像处理】详解 最近邻插值、线性插值、双线性插值、双三次插值

laonafahaodange的博客 5686

YOLOv5 自定义模型 Android 部署完整指南

本文详细介绍了将YOLOv5模型部署到Android设备的完整流程,包含三个核心部分:首先验证官方模型测试,确保基础环境配置正确;随后进行模型转换,从PyTorch导出ONNX格式并优化,再转换为NCNN格式;最后在Android项目中集成自定义模型,包括文件替换、参数修改和代码适配。教程基于YOLOv5 6.1版本,使用NCNN框架进行移动端推理,涵盖了常见问题解决方案和关键配置要点,为开发者提供了从训练到部署的完整技术路线。

FJN110的博客 592
上一篇: Vsiaul C#如何读取注册信息
下一篇: JAVA字符串处理函数列表一览
JavaAlpha
博客等级 码龄18年 910粉丝 511原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值