点击超链接下载.pdf文件

2023-05-16

上代码

package Servlet.response;

import jakarta.servlet.ServletException;
import jakarta.servlet.ServletOutputStream;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;
import jakarta.servlet.http.HttpServletRequest;
import jakarta.servlet.http.HttpServletResponse;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;

@WebServlet("/responseServlet2")
public class responseServlet2 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        this.doPost(req, resp);
    }

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("application/pdf");
        resp.setHeader("Content-Disposition","attachment;fileName="+"a.pdf");
        String path = this.getServletContext().getRealPath("/");
        File file = new File(path + "test.pdf");
        ServletOutputStream out =null;
        FileInputStream inputStream = null;
        try {
            inputStream = new FileInputStream(file);
            out =resp.getOutputStream();
            int b= 0;
            byte[] bytes = new byte[1024];
            while ((b=inputStream.read(bytes))!=-1){
                out.write(bytes,0,b);
            }
        } catch (IOException e) {
            e.printStackTrace();
        }finally {
            out.close();
            out.flush();
            inputStream.close();
        }
    }
}

前台

<a href="/responseServlet2" >它是什么样的</a>

需要下载的文件test.pdf放这里

在这里插入图片描述

也可以下载其他类型
这里参数改一下
resp.setContentType(“application/pdf”);
resp.setHeader(“Content-Disposition”,“attachment;fileName=”+“a.pdf”);

text/html : HTML格式
text/plain :纯文本格式
text/xml : XML格式
image/gif :gif图片格式
image/jpeg :jpg图片格式
image/png:png图片格式
以application开头的媒体格式类型:

application/xhtml+xml :XHTML格式
application/xml: XML数据格式
application/atom+xml :Atom XML聚合格式
application/json: JSON数据格式
application/pdf:pdf格式
application/msword : Word文档格式
application/octet-stream : 二进制流数据(如常见的文件下载)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

点击超链接下载.pdf文件 的相关文章

  • 如何抓住用户痛点进行短视频文案创作?三个小方法可运用

    如何抓住用户痛点进行短视频文案创作 xff1f 三个小方法可运用 众所周知 xff0c 短视频的文案创作 xff0c 其实也是需要抓住用户痛点的 xff0c 而只要能够做到这一点 xff0c 吸引用户其实就非常简单了 所谓抓住用户痛点 xf
  • 短视频文案怎么写才能吸引用户?幽默不是唯一,触发情感也很重要

    短视频文案怎么写才能吸引用户 xff1f 幽默不是唯一 xff0c 触发情感也很重要 很多做短视频的小伙伴们都会烦恼一件事 xff0c 那就是不知道短视频的文案究竟要怎么写才能够顺利的吸引到用户 很多小伙伴认为幽默的文案才能吸粉引流 xff
  • 短视频运营小技巧,标题文案都很重要,还有配音也别忘记

    短视频运营小技巧 xff0c 标题文案都很重要 xff0c 还有配音也别忘记 想要让自己的短视频获得高高的流量 xff0c 那么是离不开运营小技巧的 xff0c 那么今天我们就来分享三个短视频运营的小技巧 xff0c 标题文案都很重要 xf
  • java中怎样获取绝对路径,增加代码的灵活性?

    介绍获取绝对路径的方法 xff0c 一种是获取普通文件 xff0c 另一种是只能获取后缀名为 properties的文件 第一种 xff1a 在IO流读取文件时 xff0c 我们往往会通过直接写文件名的方式取 xff0c 例如 xff1a
  • tomcat学习笔记之catalina.sh

    本文基于tomcat 8 0 18版本的源码实现写作 xff0c 随tomcat7发布的脚本可能会有些差异 最早是在07年部门培训的时候接触到tomcat xff0c 但后来的工作都和web开发不相关 xff0c 所以没有积累多少使用经验
  • 24届春招百度暑假实习笔试第二题

    题干 解答 该题目在解决的时候 xff0c 需要发现就是对于相同的字符我们应该放在一起 xff0c 这样在进行修改的时候 xff0c 对其他字符的影响才会小 然后连续相同字符个数 和 组成的回文子串数目 它们的通解为 an 61 n 2 4
  • (二十三)操作系统-多生产者·多消费者问题

    文章目录 一 问题描述二 问题分析1 关系分析2 整理思路 三 实现1 代码2 如果不要互斥信号量3 将盘子 xff08 缓冲区 xff09 容量设为2 四 总结 一 问题描述 桌子上有一只盘子 xff0c 每次只能向其中放入一个水果 爸爸
  • 事件循环机制的理解

    点此链接
  • 【快速学习vue3】

    点此链接
  • 配置FTP协议 并且连接交换机进行文件传输

    配置FTP连接交换机进行文件传输 文章目录 配置FTP连接交换机进行文件传输前言一 FTP文件传输协议1 配置环境电脑验证 xff08 使用CMD直接ftp 43 进行连接的设备IP xff09 前言 本文为网络工程师培训中的学习笔记 xf
  • Mysql-最左前缀法则以及索引失效情况

    最左前缀法则 如果索引了多列 xff08 联合索引 xff09 xff0c 要遵守最左前缀法则 最左前缀法则指的是查询从索引的最左列开始 xff0c 并且不跳过索引中的列 如果跳跃某一列 xff0c 索引将会部分失效 后面的字段索引失效 以
  • Spring框架开发流程

    Spring框架是什么 xff1f Spring是一个开源框架 xff0c Spring是于2003 年兴起的一个轻量级的Java 开发框架 xff0c 由Rod Johnson 在其著作Expert One On One J2EE Dev
  • HJ71 字符串通配符

    描述 问题描述 xff1a 在计算机中 xff0c 通配符一种特殊语法 xff0c 广泛应用于文件搜索 数据库 正则表达式等领域 现要求各位实现字符串通配符的算法 要求 xff1a 实现如下2个通配符 xff1a xff1a 匹配0个或以上
  • 如何用Java实现判断一个链表是否有环

    设置一个快指针和一个慢指针 xff0c 快指针一次走两步 xff0c 慢指针一次走一步 如果该链表没有环 xff0c 快指针会先指向NULL xff0c 可据此判断链表没有环结构 xff1b 如果该链表有环 xff0c 则快指针肯定先进环
  • Arch Linux安装 2023-04-09

    除特殊场景外 下面所有的 34 34 后都是注释 准备 EFI分区不小于200mb iso版本 archlinux 2023 04 01 x86 64 使用分区工具预留出足够空间 gt 20G 标签为 未分配 安装 连接网络 rfkill
  • Spring Boot配置数据库链接池

    配置方法 基于当前的1 5 2 RELEASE的Spring Boot 依照官方文档 xff0c 如果增加了如下依赖的配置 xff0c 或者类路径中存在spring boot starter jdbc的jar xff0c 那么已默认启用了数
  • 一文搞懂Java中相对路径与绝对路径

    一文搞懂Java中相对路径与绝对路径 在java中路径分隔使用正斜杠 xff0c 不推荐使用反斜杠 xff08 因为反斜杠需要转义两个反斜杠表示一个正斜杠 xff09 在windows磁盘中用 反斜杠 表示路径的分隔在浏览器中用 正斜杠 来
  • 【向量的叉乘】

    一 二维向量叉乘公式 xff1a a xff08 x1 xff0c y1 xff09 xff0c b xff08 x2 xff0c y2 xff09 xff0c 则a b 61 xff08 x1y2 x2y1 xff09 二 a b 61
  • JAVA常用类

    Object类 Object类是类层次结构的根 xff0c 每个类都可以将Object作为超类 所有类都直接或者间接的继承该类 Object只有无参构造方法 Math类 包含执行基本数学运算的方法 Random类 伪随机数 java uta
  • Collections类 [Java]

    Collections工具类 Collections是一个操作Collection集合和Map集合的工具类 Collections不仅仅是操作Collection集合 还可以操作Map集合 Collection和Collections有什么

随机推荐

  • 我阿里P7了解到的Android面试的一些小内幕!已拿offer

    前言 这些题目是网友去百度 小米 乐视 美团 58 猎豹 360 新浪 搜狐等一线互联网公司面试被问到的题目 熟悉本文中列出的知识点会大大增加通过前两轮技术面试的几率 欢迎一线公司员工以及网友提交面试题库 xff0c 欢迎留言 网上的都是按
  • 7月编程排行榜来啦!这次有何新变化?

    每月编程排行榜可能会迟到 xff0c 但永远不缺席 7月的编程排行榜已出 xff0c 接下来一起看看有哪些看点吧 Tiobe编程排行榜前20名 Tiobe编程排行榜Top 10趋势 TIOBE Index编程社区指数是编程语言流行度的一个指
  • 操作系统 记录型信号量实现生产者消费者问题(完整代码)

    问题描述 用信号量模拟生产者 消费者问题的过程 生产者和消费者两个线程共享同一个缓冲区 xff0c 生产者不断向缓冲区中添加产品 xff0c 消费者从缓冲区中消费产品 要保证缓冲区满了之后生产者不能再继续添加产品 xff0c 需要等消费者至
  • 制版经验分享—使用AD18

    文章目录 前言一 封装二 走线三 注意细节四 制版流程五 制版细节总结 前言 在做一些培训题目时 xff0c 由于时间有限制 xff0c 在外面开板会花费好几天的制作和快递时间 xff0c 所以有时候就需要自己制版 xff0c 在这里我记录
  • Java打印九九乘法表

    1 使用双重for循环打印九九乘法表 Java源代码如下 xff1a for int i 61 0 i lt 61 9 i 43 43 for int j 61 1 j lt 61 i j 43 43 System out print i
  • 解决selenium打开Chrome浏览器自动退出的问题

    好不容易安装好selenium和对应的浏览器驱动器后终于可以运行程序了 xff0c 结果发现一运行程序后浏览器打开就自动退出了 xff0c 但是我在Python代码中并没有写driver quit 方法 xff0c 上网查了查发现原来是我的
  • 在Java应用中嵌入sshd服务

    这个应用需要依赖apache mina的子项目sshd xff0c 项目主页http mina apache org sshd project index html xff0c 当前版本号为0 8 0 这里的sshd和Linux下的sshd
  • openssl开发库安装时的踩坑指南

    序 前几天用linux编译一个提权脚本的时候报错 openssl opensslv h 没有那个文件或目录 的问题 无论如何也解决不了 xff0c 这下我记录一个踩坑指南防止下一个人掉进坑里 操作 总体介绍 首先介绍一下 xff0c 这个报
  • 性能测试脚本用例【模板】

    产品名称Product name 密级Confidentiality level 秘密 产品版本Product version Total 12pages 共12页 性能测试脚本用例 仅供内部使用 拟制 日期 xff1a 审核 日期 xff
  • Java常见的集合类

    我们常见的Java集合类有List Set Map List 1 接口可以被继承 2 接口可以被多次实现 3 List和ArrayList package List import java util ArrayList import jav
  • WIN7我的电脑右键管理打不开

    问题现象 xff1a 我的电脑右键点击管理无法正常打开 xff0c 会弹出下面的报错信息 首先打开注册表 xff0c 打开运行 xff0c 输入regedit 选择路径 xff1a HKEY LOCAL MACHINE SOFTWARE C
  • LIKE的用法

    我们来谈谈关于like运算符的理解 xff1a 下面是like的语法 xff0c 以后使用到like运算符的都必须根据这个语法使用 LIKE 运算符是用来匹配通配符指定模式的文本值 如果搜索表达式与模式表达式匹配 xff0c LIKE 运算
  • 从0开始详细安装archlinux(UEFI启动)

    隔了一周没更新 xff0c 前阵子把电脑windows卸了装了个archlinux xff0c 不得不说arch是真的香 xff0c 但是坑也是真的多 xff0c 刚踩完所有的坑 xff0c 滚回来写blog了 注 xff1a 本贴为UEF
  • archlinux开机无法联网问题,以及安装archlinuxcn和yay管理器

    前一篇已经安装完了archlinux系统 xff0c 不过真正难的其实并不是安装 xff0c 你的路现在才开始 xff0c 哈哈 添加用户 建议 xff0c 不然使用登录管理器的时候不支持root用户 span class token fu
  • archlinux安装kde桌面和sddm登录管理器

    前几篇已经配置好了archlinuxcn软件仓库 xff0c 网络和nvidia驱动 xff0c 现在来给你的archlinux安装一个kde桌面 xff08 kde玩法有很多 xff0c 可以自己去搜一搜美化教程 xff09 xff0c
  • Spring框架学习

    目录 目录 学习内容 xff1a IoC java中创建对象有哪些方式 xff1a ioc的体现 xff1a DI 是ioc的技术实现 spring的第一个核心功能 ioc Spring 八大模块 Spring的特点 xff1a Sprin
  • CenOs6.7不能使用yum命令

    因为官方不维护了所以 先用更换源 wget O etc yum repos d CentOS Base repo https mirrors aliyun com repo Centos vault 6 10 repo https deve
  • PowerMock注解PowerMockIgnore的使用方法

    故事要从一个异常开始 xff0c 某天我在开发一个加密 解密特性 xff0c 算法使用的是3DES xff0c 样例代码如下 package org jackie study powermock import java io Unsuppo
  • 如何写一棵AVL树

    二叉查找树 二叉查找树有一个缺陷就是查询效率跟树的高度有关 在极端情况下 xff0c 查询效率为n 如何解决二叉查找树效率低问题 xff1f 要增加查询效率 xff0c 高效的方案是在插入的时候对树进行一下平衡操作 xff0c 降低树的高度
  • 点击超链接下载.pdf文件

    上代码 span class token keyword package span span class token class name Servlet span span class token punctuation span res