使用Servlet实现下载文件的功能

vivado运行时报错 license文件更新操作 vivado使用:SYNTHESIS->Run Synthesis 时报错 [Common 17-345] A valid license was not found for feature ‘Synthesis’ and/or device ‘xc7vx485t’. Please run the Vivado License Manager for assistance in determiningwhich features and devices are licensed for your sy 阅读详情

使用Servlet实现下载文件的功能

在前台有一个下载链接,比如

 

<a href="DownLoadServlet">下载</a> <br/>  

 


使用Servlet实现下载:

 

 

复制代码
import java.io.File;  
import java.io.FileInputStream;  
import java.io.IOException;  
import java.net.URLEncoder;  
  
import javax.servlet.ServletException;  
import javax.servlet.ServletOutputStream;  
import javax.servlet.http.HttpServlet;  
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
  
public class DownLoadServlet extends HttpServlet {  
  
      
    public DownLoadServlet() {  
        super();  
    }  
  
  
    public void destroy() {  
        super.destroy(); // Just puts "destroy" string in log  
        // Put your code here  
    }  
  
  
    public void doGet(HttpServletRequest request, HttpServletResponse response)  
            throws ServletException, IOException {  
        doPost(request,response);  
    }  
  
      
    public void doPost(HttpServletRequest request, HttpServletResponse response)  
            throws ServletException, IOException {  
        //处理请求  
        //读取要下载的文件  
        File f = new File("E:/好久不见.mp3");  
        if(f.exists()){  
            FileInputStream  fis = new FileInputStream(f);  
            String filename=URLEncoder.encode(f.getName(),"utf-8"); //解决中文文件名下载后乱码的问题  
            byte[] b = new byte[fis.available()];  
            fis.read(b);  
            response.setCharacterEncoding("utf-8");  
            response.setHeader("Content-Disposition","attachment; filename="+filename+"");  
            //获取响应报文输出流对象  
            ServletOutputStream  out =response.getOutputStream();  
            //输出  
            out.write(b);  
            out.flush();  
            out.close();  
        }     
          
    }  
  
    /** 
     * Initialization of the servlet. <br> 
     * 
     * @throws ServletException if an error occurs 
     */  
    public void init() throws ServletException {  
        // Put your code here  
    }  
  
}  
复制代码

 

 

 

配置文件注意路径。。。

华为OD机考双机位C卷 - 手机App防沉迷系统(Java & Python& JS & C/C++ & GO ) 华为OD机考双机位C卷 - 手机App防沉迷系统(OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。 阅读详情

相关推荐

【随机过程】 3 - 随机过程的频域分析1 - 功率谱

随机过程的频域分析 文章目录随机过程的频域分析1. 什么是谱2. 确定信号的频谱2.1 周期信号的频谱2.2 非周期信号的频谱3. 随机信号的谱3.1 随机信号做傅里叶分析的困难3.2 功率谱密度的物理和数学表示形式3.2.1 功率谱密度的物理表示3.2.2 功率谱密度的数学表示3.3 功率谱密度的解读3.3.1 量纲分析3.3.2 谱3.3.3 密度3.3.4 wiener和khinchin3.4 功率谱密度的性质3.4.1 非线性3.4.2 偶函数3.5 wiener-khinchin关系的应用3.6

qq_41741344的博客 3133

15:Servlet 3.0文件上传与下载-Java Web

15:Servlet 3.0文件上传与下载-Java Web

Yeats_Liao的博客 1591

百度智能云ASR实战:5分钟搞定Unity语音转文字(含完整代码)

本文详细介绍了如何在Unity中集成百度智能云ASR服务,实现高效的语音转文字功能。从环境配置、音频处理到服务端通信,提供完整代码示例和实战优化技巧,帮助开发者快速实现语音交互功能,适用于游戏开发、XR应用等场景。

ujm56789012的博客 215

(十六)Servlet教程——Servlet文件下载

rar文件

2359

从AMBA到USB:手把手教你评估和选择Synopsys DesignWare里的免费商用IP

本文详细介绍了如何评估和选择Synopsys DesignWare中的免费商用IP,从AMBA到USB等关键模块。通过技术参数核对、验证环境评估和集成注意事项,帮助工程师高效利用这些经过硅验证的商业级IP,提升SoC设计效率。文章还探讨了免费IP与付费IP的边界策略,避免常见陷阱。

weixin_42683394的博客 299

从CPRI到eCPRI:手把手教你用Wireshark分析基站前传协议帧结构

本文手把手教你使用Wireshark工具,深入解析从CPRI到eCPRI的基站前传协议帧结构。通过搭建分析环境、编写解析脚本,并对比两者在时延管理、帧格式及数据封装上的差异,为无线通信领域的研发与测试人员提供了一套实用的逆向分析与故障排查方法。

x8y9z0的博客 605

Servlet文件的下载

servlet中的文件下载

kakams_008的博客 1109

华为OD机考双机位C卷 - 构成正方形的数量 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 成正方形的数量 (OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 5939

Servlet实现下载文件

1、InputStream getResourceAsStream(String path) 得到web目录下的资源,转成一个输入流对象。2、String getRealPath(String path) web目录下的资源,得到它在服务器上部署的真实路径。2.设置content-disposition头。ServletContext的方法。4.得到response的输出流。6.解决下载文件名使用汉字的情况。#粤嵌星计划,粤嵌我来了##粤嵌星计划,粤嵌我来了#1.从链接上得到文件名。3.得到文件的输入流。

Crush258_的博客 603

DP83869HM的LWIP性能测试

E:/Xilinx/Vitis/2021.1/data/embeddedsw/ThirdParty/sw_services/lwip211_v2_0/src/contrib/ports/xilinx/netif/xemacpsif_physpeed.c文件中的。然后phy_setup_emacps中调用get_IEEE_phy_speed函数,根据PHY的ID判断出Marvell或TI或Realtek的PHY,调用对应的网速自动协商函数get_TI_phy_speed,该函数中的部分配置需要注释。

FPGA艺术家的博客 357

uni-app - 最新实现将 uniapp 项目打包编译为 H5 网站,并上传部署到 web 服务器进行发布预览(从打包到发布完整流程步骤,Hbuilder 编译打包 h5 发行到 web 服务器)

uniapp,打包h5,打包编译H5网站,怎么打包h5,uniapp打包成H5部署到服务器教程,uniapp打包H5页面发布到服务器,uniapp开发,打包成H5部署到服务器_uniapp打包h5,uniapp如何打包h5项目,怎么把项目打包成H5,uniapp如何打包成H5并且放到web端上,打包成h5部署到服务器的步骤,打包发行到h5报错怎么办,如何将uniapp打包的h5网站放到服务器上,编译打包后怎么放到web服务器中,如何将uniapp开发的H5打包并部署到服务器,部署使用uniapp开发的h5

🏆 前端领域优质创作者 1万+

通过Servlet实现文件下载

通过Servlet实现文件下载 文件下载功能是web开发中经常使用到的功能,使用HttpServletResponse对象就可以实现文件的下载 文件下载功能的实现思路: 1.获取要下载的文件的绝对路径 2.获取要下载的文件名 3.设置content-disposition响应头控制浏览器以下载的形式打开文件 4.获取要下载的文件输入流 5.创建数据缓冲区 6.通过response对象获取OutputStream流 7.将FileInputStream流写入到buffer缓冲区 8.使用OutputStrea

weixin_61114210的博客 4484

3️⃣ Coze工作流基础教学(2025年全新版本)

Coze 工作流作为扣子平台的重磅工具,利用可视化节点,如大语言模型、插件、条件判断等,把复杂任务巧妙拆解成多步骤流程。它不仅支持自动化编排,还能实现跨系统协同,有效提升处理效率与输出稳定性。在那些对准确性或格式有严格要求的场景中,比如报告生成、旅行规划,Coze 工作流更是发挥着关键作用。

李同学Lino的博客 5862

iOS桌面组件开发全指南:WidgetKit时间线机制与审核避坑实录

桌面小组件作为iOS主屏幕的高频交互入口,正成为独立开发者切入苹果生态的轻量级赛道。其底层由WidgetKit框架支撑,核心在于时间线机制——开发者需预计算未来一段时间的数据快照,交由系统按时间节点渲染,从而兼顾实时性与低功耗。配合App Group共享容器,组件能与主App实现数据联动,覆盖倒数日、习惯打卡等典型场景。从技术选型、时间线设计到数据同步,再到苹果审核的细节规范,一款桌面组件App从立项到上架的全过程由此完整呈现,为iOS开发者的组件实践提供了可复用的工程参考。

weixin_30595035的博客 273

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

使用普通的Servlet实现文件下载功能

Web容器为Servlet生成并且传递的HttpServletResponse对象不仅可以返回HTML文本,而且可以返回任何主流的其他文件格式,例如,.doc、.pdf、.jar、.avi等内容格式的文件.这些类型内容在HTTP协议中主要是体现在HTTP响应消息中的消息头部的content-type字段以及响应有效负载中. content-type是想浏览器指明有效负载区里的内容是某某类型的,例

lijunlinlijunlin的专栏 527

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

java-Servlet实现上传和下载文件,使用XHR请求数据,登录和注册功能

java-Servlet实现上传和下载文件,使用XHR请求数据,登录和注册功能

m0_52710583的博客 616

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

java 文件上传 servlet_JavaWeb:servlet实现下载与上传功能

本文内容:servlet实现下载功能servlet实现上传功能首发日期:2018-07-21servlet实现下载功能实现流程1.首先制作一个jsp页面,主要是用来触发下载的。这里可以根据你的想法来做,当然servlet那边就要相应的更改了。我这里使用一个简单的a标签来触发。2.设置响应信息,告诉浏览器要将传过来的数据识别成下载;根据提交上来的数据找到对应文件,转成流,返回给浏览器;中文文件名问题...

weixin_29741447的博客 206

【Servlet】HttpServletResponse实现下载文件、验证码功能、实现重定向,使用HttpServletRequest获取前端传递的参数+请求转发,请求转发与重定向

HttpServletResponse 下载文件 验证码功能 实现重定向 HttpServletRequest

Zhou_LC的博客 380

【JavaWeb】Servlet实现上传和下载文件的功能

本文主要讲述了,如何以JavaWeb在网页中实现文件的上传下载功能,已有相当基础全面的代码和步骤讲解,在文末也提供了相关源码资源供大家参考。

peng_YuJun的博客 1万+

一个使用Servlet文件实现文件下载的实例

一个使用Servlet文件实现文件下载的实例 (可以扩充本实例实现:对用户隐藏他要下载文件的路径,或者在下载文件时要做一些其他的工作,如检查用户有没有下载此文件的权限等) 了解在Servlet中如何控制输出流以及response对象的contentType相关知识 一个Servlet文件DownloadFile,在此Servlet中读取要下载的文件,然后写到响应流中以达到用户下载文件的目

lanchengxiaoxiao的专栏 630

javaweb-使用servlet实现文件下载

问题;使用servlet实现文件下载 解决方案: 1.准备下载文件,在本程序中准备了一个文本文件down1.txt和图片文件 美女.jpg ,放在/WEB-INF/download/目录下 2.编写servlet ::FileDownload

The Hot Java 868
上一篇: getRequestDispatcher()与sendRedirect()的区别
下一篇: Eclipse中关于JRE System Library、Web App Libraries的疑惑
xosg
xosg 领域专家: 网络协议与安全技术领域 领域专家: 网络协议与安全技术领域
博客等级 码龄9年 1986粉丝 864原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xosg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值