spring boot 下载resources下的静态文件为流格式

废话不多说,直接上代码
一、下载逻辑

public void downAppApk(HttpServletResponse response){ClassPathResource classPathResource = new ClassPathResource("app/xxxxxx.apk");if (!classPathResource.exists()) {throw new BusinessException("安装包不存在");}String appName = URLEncoder.encode("xxxxxx","UTF-8") + ".apk";InputStream inputStream = classPathResource.getInputStream();OutputStream outputStream = response.getOutputStream();response.setContentType("application/vnd.android.package-archive");response.setCharacterEncoding("utf-8");response.setHeader("Content-disposition", "attachment;filename=" + appName);IOUtils.copy(inputStream,outputStream);}

二、格式对照表
比较全面的contentType的类型值

文件扩展名                        Content-Type(Mime-Type)
.*( 二进制流,不知道下载文件类型)	application/octet-stream	
.tif	image/tiff
.asp	text/asp	
.asx	video/x-ms-asf
.au	    audio/basic	
.avi	video/avi
.awf	application/vnd.adobe.workflow	
.biz	text/xml
.bmp	application/x-bmp	
.bot	application/x-bot
.cit	application/x-cit	
.class	java/*
.csi	application/x-csi	
.css	text/css
.dcd	text/xml	
.dcx	application/x-dcx
.dib	application/x-dib	
.dll	application/x-msdownload
.doc	application/msword	
.dot	application/msword
.drw	application/x-drw	
.dtd	text/xml
.dwf	Model/vnd.dwf	
.dwf	application/x-dwf
.etd	application/x-ebx	
.exe	application/x-msdownload
.gif	image/gif	
.gl2	application/x-gl2
.hrf	application/x-hrf	
.hta	application/hta
.htc	text/x-component	
.htm	text/html
.html	text/html	
.htt	text/webviewhtml
.htx	text/html	
.icb	application/x-icb
.ico	image/x-icon	
.ico	application/x-ico
.iff	application/x-iff	
.ig4	application/x-g4
.igs	application/x-igs	
.iii	application/x-iphone
.img	application/x-img	
.ins	application/x-internet-signup
.java	java/*	
.jfif	image/jpeg
.jpe	image/jpeg	
.jpe	application/x-jpe
.jpeg	image/jpeg	
.jpg	image/jpeg
.jpg	application/x-jpg	
.js	    application/x-javascript
.jsp	text/html	
.la1	audio/x-liquid-file
.mdb	application/msaccess	
.mdb	application/x-mdb
.mfp	application/x-shockwave-flash	
.mht	message/rfc822
.mhtml	message/rfc822	
.mi	    application/x-mi
.mid	audio/mid	
.midi	audio/mid
.mil	application/x-mil	
.mml	text/xml
.mnd	audio/x-musicnet-download	
.mns	audio/x-musicnet-stream
.mocha	application/x-javascript	
.movie	video/x-sgi-movie
.mp1	audio/mp1	
.mp2	audio/mp2
.mp2v	video/mpeg	
.mp3	audio/mp3
.mp4	video/mpeg4	
.mpa	video/x-mpg
.mpd	application/vnd.ms-project	
.mpe	video/x-mpeg
.mpeg	video/mpg	
.mpg	video/mpg
.mpga	audio/rn-mpeg	
.mpp	application/vnd.ms-project
.mps	video/x-mpeg	
.mpt	application/vnd.ms-project
.mpv	video/mpg	
.mpv2	video/mpeg
.mpw	application/vnd.ms-project	
.mpx	application/vnd.ms-project
.mtx	text/xml	
.mxp	application/x-mmxp
.net	image/pnetvue	
.nrf	application/x-nrf
.nws	message/rfc822	
.odc	text/x-ms-odc
.out	application/x-out	
.p10	application/pkcs10
.p12	application/x-pkcs12	
.p7b	application/x-pkcs7-certificates
.p7c	application/pkcs7-mime	
.p7m	application/pkcs7-mime
.p7r	application/x-pkcs7-certreqresp	
.p7s	application/pkcs7-signature
.pc5	application/x-pc5	
.pci	application/x-pci
.pcl	application/x-pcl	
.pcx	application/x-pcx
.pdf	application/pdf	
.pdf	application/pdf
.pdx	application/vnd.adobe.pdx	
.pfx	application/x-pkcs12
.pgl	application/x-pgl	
.pic	application/x-pic
.pko	application/vnd.ms-pki.pko	
.pl	    application/x-perl
.plg	text/html	
.pls	audio/scpls
.plt	application/x-plt	
.png	image/png
.png	application/x-png	
.pot	application/vnd.ms-powerpoint
.ppa	application/vnd.ms-powerpoint	
.ppm	application/x-ppm
.pps	application/vnd.ms-powerpoint	
.ppt	application/vnd.ms-powerpoint
.ppt	application/x-ppt	
.pr	    application/x-pr
.prf	application/pics-rules	
.prn	application/x-prn
.prt	application/x-prt	
.ps	    application/x-ps
.ps	    application/postscript	
.ptn	application/x-ptn
.pwz	application/vnd.ms-powerpoint	
.r3t	text/vnd.rn-realtext3d
.ra	    audio/vnd.rn-realaudio	
.ram	audio/x-pn-realaudio
.ras	application/x-ras	
.rat	application/rat-file
.rdf	text/xml	
.rec	application/vnd.rn-recording
.red	application/x-red	
.rgb	application/x-rgb
.rjs	application/vnd.rn-realsystem-rjs	
.rjt	application/vnd.rn-realsystem-rjt
.rlc	application/x-rlc	
.rle	application/x-rle
.rm	    application/vnd.rn-realmedia	
.rmf	application/vnd.adobe.rmf
.rmi	audio/mid	
.rmj	application/vnd.rn-realsystem-rmj
.rmm	audio/x-pn-realaudio	
.rmp	application/vnd.rn-rn_music_package
.rms	application/vnd.rn-realmedia-secure	
.rmvb	application/vnd.rn-realmedia-vbr
.rmx	application/vnd.rn-realsystem-rmx	
.rnx	application/vnd.rn-realplayer
.rp	    image/vnd.rn-realpix	
.rpm	audio/x-pn-realaudio-plugin
.rsml	application/vnd.rn-rsml	
.rt	    text/vnd.rn-realtext
.rtf	application/msword	
.rtf	application/x-rtf
.rv	    video/vnd.rn-realvideo	
.sam	application/x-sam
.sat	application/x-sat	
.sdp	application/sdp
.sdw	application/x-sdw	
.sit	application/x-stuffit
.slb	application/x-slb	
.sld	application/x-sld
.slk	drawing/x-slk	
.smi	application/smil
.smil	application/smil	
.smk	application/x-smk
.snd	audio/basic	
.sol	text/plain
.sor	text/plain	
.spc	application/x-pkcs7-certificates
.spl	application/futuresplash	
.spp	text/xml
.ssm	application/streamingmedia	
.sst	application/vnd.ms-pki.certstore
.stl	application/vnd.ms-pki.stl	
.stm	text/html
.sty	application/x-sty	
.svg	text/xml
.swf	application/x-shockwave-flash	
.tdf	application/x-tdf
.tg4	application/x-tg4	
.tga	application/x-tga
.tif	image/tiff	
.tif	application/x-tif
.tiff	image/tiff	
.tld	text/xml
.top	drawing/x-top	
.torrent	application/x-bittorrent
.tsd	text/xml	
.txt	text/plain
.uin	application/x-icq	
.uls	text/iuls
.vcf	text/x-vcard	
.vda	application/x-vda
.vdx	application/vnd.visio	
.vml	text/xml
.vpg	application/x-vpeg005	
.vsd	application/vnd.visio
.vsd	application/x-vsd	
.vss	application/vnd.visio
.vst	application/vnd.visio	
.vst	application/x-vst
.vsw	application/vnd.visio	
.vsx	application/vnd.visio
.vtx	application/vnd.visio	
.vxml	text/xml
.wav	audio/wav	
.wax	audio/x-ms-wax
.wb1	application/x-wb1	
.wb2	application/x-wb2
.wb3	application/x-wb3	
.wbmp	image/vnd.wap.wbmp
.wiz	application/msword	
.wk3	application/x-wk3
.wk4	application/x-wk4	
.wkq	application/x-wkq
.wks	application/x-wks	
.wm	    video/x-ms-wm
.wma	audio/x-ms-wma	
.wmd	application/x-ms-wmd
.wmf	application/x-wmf	
.wml	text/vnd.wap.wml
.wmv	video/x-ms-wmv	
.wmx	video/x-ms-wmx
.wmz	application/x-ms-wmz	
.wp6	application/x-wp6
.wpd	application/x-wpd	
.wpg	application/x-wpg
.wpl	application/vnd.ms-wpl	
.wq1	application/x-wq1
.wr1	application/x-wr1	
.wri	application/x-wri
.wrk	application/x-wrk	
.ws	    application/x-ws
.ws2	application/x-ws	
.wsc	text/scriptlet
.wsdl	text/xml	
.wvx	video/x-ms-wvx
.xdp	application/vnd.adobe.xdp	
.xdr	text/xml
.xfd	application/vnd.adobe.xfd	
.xfdf	application/vnd.adobe.xfdf
.xhtml	text/html	
.xls	application/vnd.ms-excel
.xls	application/x-xls	
.xlw	application/x-xlw
.xml	text/xml	
.xpl	audio/scpls
.xq	    text/xml	
.xql	text/xml
.xquery	text/xml	
.xsd	text/xml
.xsl	text/xml	
.xslt	text/xml
.xwd	application/x-xwd	
.x_b	application/x-x_b
.sis	application/vnd.symbian.install	
.sisx	application/vnd.symbian.install
.x_t	application/x-x_t	
.ipa	application/vnd.iphone
.apk	application/vnd.android.package-archive	
.xap	application/x-silverlight-app

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/107278.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

好用的跨平台同步笔记工具,手机和电脑可同步的笔记工具

在这个快节奏的工作环境中,每个人都在寻找一种方便又高效的方式来记录工作笔记。记录工作笔记可以帮助大家统计工作进展,了解工作进程,而如果工作中常在一个地方办公,直接选择电脑或者手机中笔记工具来记录即可,但是对…

[部署网站]01安装宝塔面板搭建WordPress

宝塔面板安装WordPress(超详细)_Wordpress主题网 参考教程 宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板 官网 1.首先你需要一个服务器或者主机 (Windows系统或者Linux系统都可以) 推荐Linux系统更稳定,…

centos7安装docker-compose

1、下载docker-compose 网盘下载: 链接:https://pan.baidu.com/s/1pltG3aWiN9zMqYt7ZVyLng 提取码:7awd --来自百度网盘超级会员V5的分享2、上传docker-compose文件到/usr/local/bin目录 [root192 bin]# ll 总用量 53892 -rwxrwxrwx 1 …

service worker实现静态资源缓存

service worker如何实现静态资源缓存和强制更新,请看如下示例: 1、注册service worker function serviceWorker() {if (isLocalStorageAvailable() && serviceWorker in navigator) {navigator.serviceWorker.register(/static/almasaeed2010/…

Axure RP医疗在线挂号问诊原型图医院APP原形模板

医疗在线挂号问诊Axure RP原型图医院APP原形模板,是一款原创的医疗类APP,设计尺寸采用iPhone13(375*812px),原型图上加入了仿真手机壳,使得预览效果更加逼真。 本套原型图主要功能有医疗常识科普、医院挂号…

海思平台SS528V100编译 linux kernel tun.c eth_get_headlen 编译 出错的问题

osdrv目录下 make kernel 会去opensource目录下解压linux内核压缩包 同时打上很多补丁 如上图 查看Makefile 如下 有打补丁的命令 然后 然后我们的应用程序用到一个特性 需要打开tun/tab这两个属性 打开之后编译内核出错 查到最后发现 没打补丁之前的文件 没问题 …

Qt拖拽文件到窗口、快捷方式打开

大部分客户端都支持拖拽文件的功能,本篇博客介绍Qt如何实现文件拖拽到窗口、快捷方式打开,以我的开源视频播放器项目为例,介绍拖拽视频到播放器窗口打开。   需要注意的是,Qt拖拽文件的功能,不支持以管理员权限启动的…

maven 新建模块 导入后 按Ctrl 点不进新建模块pom定义

新建的ruoyi-common-mybatisplus 模块,导入一直不正常 画出的模块一直导入不进来 这是提示信息 这是正常的提示信息 加上 <version>3.6.3</version> 后,才一切正常

攻防世界题目练习——Web引导模式(三)(持续更新)

题目目录 1. mfw2.3.4.5. 1. mfw 进去看到网页和页面内容如下&#xff1a; 看到url的参数 ?pageabout &#xff0c;我以为是文件包含什么的&#xff0c;反复试了几次&#xff0c;想用 …/…/…/…/etc/passwd &#xff0c;但是发现.似乎被过滤了&#xff0c;实在不知道怎么做…

uniapp(uncloud) 使用生态开发接口详情2(使用 schema创建数据, schema2code创建页面, iconfont 引入项目)

上一篇介绍如何创建项目,接下来该是如何使用 在项目中pages 目录下,新建界面 项目运行,浏览器中用账号密码登录, 新建一级和二级页面 2.1 系统管理 > 菜单管理 (新增一级界面) 2.2 找到刚刚创建的菜单, 操作行有 子菜单(点击) 用DB Schema创建页面, 3.1 在uniCloud > d…

开路、断路和短路区别

文章目录 开路和断路击穿电源短路、用电器短路、对地短路和对电源短路 开路和断路 开路和断路是电路中两种用于描述电流流动情况的状态。 两者易混淆&#xff0c;常被混淆使用&#xff0c;但是它们还是有所不同。 开路表示电路中存在一个断链&#xff0c;电流无法从一个点流到…

idea自定义 postfix completion提高编码效率

postfix completion的使用 详情见&#xff1a; https://www.cnblogs.com/expiator/p/17380495.html 自定义 postfix completion List、 String 初始化list&#xff1a; key: list表达式&#xff1a; List<$EXPR$> $END$List new ArrayList<>();字符串判空&…

git强制删除本地分支 git branch -D

git强制删除本地分支 git branch -D git删除本地分支_zhangphil的博客-CSDN博客git branch -d <分支名>可以通过: git branch 查看所有本地分支及其名字&#xff0c;然后删除特定分支。https://blog.csdn.net/zhangphil/article/details/82255002 使用git branch -d删除…

08-注册BeanPostProcesser

文章目录 1. BeanPostProcessor官方解释2. 接口的方法2.1 postProcessBeforeInitialization2.2 postProcessAfterInitialization3. 重要的几个子接口4. 注册BeanPostProcessor5. 重要的BeanPostProcessor1. BeanPostProcessor官方解释 Factory hook that allows for custom mo…

猫眼 校园招聘_1面

&#xff08;1&#xff09;打包和构建工具 vite 和 webpack 功能 1. 构建原理&#xff1a; Webpack 是一个静态模块打包器&#xff0c;通过对项目中的JavaScript、css、Image 等文件进行分析&#xff0c;生成对应的静态资源&#xff0c;并且通过一些插件和加载器来实现各种功…

退税政策线上VR互动科普展厅为税收工作带来了强大活力

缴税纳税是每个公民应尽的义务和责任&#xff0c;由于很多人缺乏专业的缴税纳税操作专业知识和经验&#xff0c;因此为了提高大家的缴税纳税办事效率和好感度&#xff0c;越来越多地区税务局开始引进VR虚拟现实、web3d开发和多媒体等技术手段&#xff0c;基于线上为广大公民提供…

GPTQ 和 AWQ:LLM 量化方法的比较

大语言模型&#xff08;LLM&#xff09;在自然语言处理&#xff08;NLP&#xff09;任务中取得了显著的进展。然而&#xff0c;LLM 通常具有非常大的模型大小和计算复杂度&#xff0c;这限制了它们在实际应用中的部署。 量化是将浮点数权重转换为低精度整数的过程&#xff0c;…

RocketMQ的长轮询(Long Polling)实现分析

目录 前言 长轮询 1.实现步骤 1.1客户端轮询发送请求 1.2服务端处理数据 1.3客户端接收数据 2.实现实例 RocketMQ长轮询 1.PullMessage服务 2.PullMessageProcessor服务 3.PullCallback回调 总结 前言 消息队列一般在消费端都会提供push和pull两种模式&#xff0c;…

云原生Kubernetes:K8S集群版本升级(v1.20.15 - v1.22.14)

目录 一、理论 1.K8S集群升级 2.集群概况 3.升级集群&#xff08;v1.21.14&#xff09; 4.验证集群&#xff08;v1.21.14&#xff09; 5.升级集群&#xff08;v1.22.14&#xff09; 6.验证集群 (v1.22.14) 二、实验 1.升级集群&#xff08;v1.21.14&#xff09; 2.验…

apifox的使用以及和idea集成

apifox 简介 Apifox 是 API 文档、API 调试、API Mock、API 自动化测试一体化协作平台&#xff0c;定位 Postman Swagger Mock JMeter&#xff0c;由此可见apifox集功能于一身&#xff0c;极大的提升了我们开发的效率&#xff0c;不用再为postman网络连接失败而发愁&…