Spring MVC 生成文件类型响应
图片控制器代码如下:
@Controller
@RequestMapping("/")
public class WebController {@RequestMapping(method=RequestMethod.GET,path="/img/{imgNo}")public void getImg(HttpServletResponse response,int index) throws IOException{ //读取图片文件到一个byte[]File file = new File("C:\\Users\\luchu\\Desktop\\QQ截图20160410192529.jpg");OutputStream stream = response.getOutputStream();FileInputStream reader = new FileInputStream(file);byte[] data= new byte[ (int) file.length()];reader.read(data);reader.close();//记得设置ContentTyperesponse.setContentType("image/png");stream.write(data);stream.flush();}}
可以看到,这里链接不再是指定某一个图片的具体位置,而是根据id动态生成。当使用 MongoDB 的 GirdFS 来存储文件时,这样使用就很有必要了。
有了这个控制器,在页面上就可以这样请求图片:
<img src="/img/182034" />
Spring MVC 生成文件类型响应相关推荐
- Mr.张小白(案例:基于Spring MVC实现文件上传和下载)
基于Spring MVC实现文件上传和下载 一.步骤 1.引入相关依赖pom.xml <?xml version="1.0" encoding="UTF-8&quo ...
- 如何在返回String的Spring MVC @ResponseBody方法中响应HTTP 400错误?
本文翻译自:How to respond with HTTP 400 error in a Spring MVC @ResponseBody method returning String? I'm ...
- Spring boot返回JSON类型响应及Content-Type设置
2019独角兽企业重金招聘Python工程师标准>>> 一.背景 服务器软件用Spring boot开发,API调用的响应消息格式为JSON. 对端调用接口后无法解析响应. 抓包看R ...
- 【Spring MVC】文件上传、文件下载
页面效果: 一.文件下载 1.访问资源时相应头如果没有设置 Content-Disposition,浏览器默认按照 inline 值进行处理 1.1 inline 能显示就显示,不能显示就下载. 2. ...
- Swagger+Spring mvc生成Restful接口文档
2019独角兽企业重金招聘Python工程师标准>>> Swagger 是一个规范和完整的框架,用于生成.描述.调用和可视化 RESTful 风格的 Web 服务.总体目标是使客户端 ...
- 利用Spring MVC 上传图片文件
本文转自:http://amcucn.iteye.com/blog/264457.感谢作者 近日在工作当中,需要用到上传图片的功能,然而自己平时学习的时候只会使用struts的上传功能,但因为项目并没 ...
- Spring MVC 解决日期类型动态绑定问题
出处:http://www.cnblogs.com/crazy-fox/archive/2012/02/18/2357699.html ean 名为User,则在相同的包中存在UserEditor类可 ...
- Spring MVC Converter(类型转换器)详解
Spring MVC 框架的 Converter<S,T> 是一个可以将一种数据类型转换成另一种数据类型的接口,这里 S 表示源类型,T 表示目标类型.开发者在实际应用中使用框架内置的类型 ...
- SSM框架之Spring MVC(三)http响应、文件上传
一.响应数据和结果视图 1.1 返回值分类 1.1.1 字符串 创建实体类和controller类 实体类User package cn.xiaomifeng1010.domain;import ja ...
最新文章
- 微软面试题:鸡蛋从第N层及以上的楼层落下会摔破
- JVM—类加载器和双亲委派模型
- Standard Deviation Normal Distribution
- 使用git bash提交代码到github托管
- .net 导出excel_.NET Core一行代码导入导出Excel生成Word
- java防xss攻击_java 防止xss攻击
- 详解LVDS通信协议
- 线上编程学院codecademy
- 数据库 实验二 数据库的单表查询和连接查询
- bpm导出成html,一种基于BPM系统的EXECL导入免开发生成静态HTML表单的方法与流程...
- 蒙特卡罗(Monte Carlo)方法计算圆周率π
- Latex——数学符号大全
- 今日头条信息流广告怎么做?(今日头条信息流广告费用解析)
- 华为路由器路由表解析
- IDEA 创建 maven pom
- java中load_Load Java参数描述的细节
- 2、无芯片RFID标签介绍
- 雅思系列学习——词汇(持续更新)
- Scala语法小练习(银行小程序)
- 从搬砖工到亿万富豪,这些年他经历了什么?
热门文章
- 微信支付—微信H5支付「微信内部浏览器」
- oracle 监听 无法连接,oracle监听hang,无法建立新连接TNS-12540
- webview代码实例化_WebView常用类和基本方法详解
- 在线安装php,CentOS在线安装PHP|dayblog-天天博客|PHP交流,PHP技术,PHP博客,博客交流,dayblog,blog,天天博客...
- 行末没有空格c语言,新人提问:如何将输出时每行最后一个空格删除
- ajax的学多久,ajax第二天学习
- SecureCRT连接linux时主机名,secureCRT连接linux方法
- mysql数据库的变量有哪些_[数据库]MySQL变量
- java深度克隆大数据_Java - 深拷贝技巧
- 【Git、GitHub、GitLab】四 Git文件重命名的简单方法以及使用git log查看版本演变历史