数据库存储图片 Blod格式2(下载)
此文接上篇 主要想讲一下图片的下载
框架背景 :spring + hibernate
看代码 ok 走你
1 public void getDate(HttpServletRequest request, HttpServletResponse response,String id) throws Exception { 2 Connection conn = null; 3 PreparedStatement ps =null; 4 ResultSet rs = null; 5 response.reset(); 6 //response.setContentType("image/*;charset=GBK"); 7 //response.setContentType("image/jpeg"); 8 //response.setContentType("text/html; charset=GBK"); 9 response.setContentType("unknown"); 10 11 try{ 12 conn = DataSourceUtils.getConnection(jdbcTemplate.getDataSource()); 13 String sql = "select img,msg,filename from "+tableName+" where id = " +"'"+id+"'"; 14 System.out.println(sql); 15 ps = conn.prepareStatement(sql); 16 rs = ps.executeQuery(); 17 if(rs.next()){ 18 Blob blob = rs.getBlob("img"); 19 String name=rs.getString("filename"); 20 response.addHeader("content-disposition", "attachment;filename=\"" + name+"\""); 21 //response.setContentType("application/x-download"); 22 //response.setContentType("application/x-msdownload"); 23 //response.addHeader("Content-Disposition","attachment;filename="+clmc+"."+cllx); 24 InputStream pi = blob.getBinaryStream(); 25 OutputStream sos = response.getOutputStream(); 26 byte bytes[] = new byte[(int)((BLOB)blob).length()]; 27 for(int n = 0; (n = pi.read(bytes)) != -1;)sos.write(bytes, 0, n); 28 pi.close(); 29 sos.flush(); 30 } 31 }catch(Exception ex){ 32 DataSourceUtils.releaseConnection(conn, jdbcTemplate.getDataSource()); 33 throw new Exception("执行时出错!" + ex.getMessage()); 34 }finally{ 35 if(rs!=null)rs.close(); 36 if(ps!=null)ps.close(); 37 if(conn!=null){ 38 try{ 39 DataSourceUtils.releaseConnection(conn,jdbcTemplate.getDataSource()); 40 }catch(Exception ex){ 41 ex.printStackTrace(); 42 } 43 } 44 } 45 }
看完之后你会发现 其实很简单
就是 用
response.addHeader("content-disposition", "attachment;filename=\"" + name+"\"");嗯 下一篇可能要学一下 request 和 respones 的一些讲解(当然也是来自网络的资源我是小白 自己做好 学习笔记就好 )
转载于:https://www.cnblogs.com/zhbx/p/8601267.html
数据库存储图片 Blod格式2(下载)相关推荐
- 数据库存储图片 Blod格式
一般情况下 我们存取图片在数据库都是存一个地址 但是今天接触到一个 直接把二进制的图片存在数据库的问题 当然是顺利解决了 所有咋这里做一个总结 框架背景 是spring hibernate 一下是要注 ...
- 数据库存储图片路径并显示到前端
数据库存储图片路径并显示到前端 -为啥不直接存图片:因为图片本身太大了,虽然存取方便了程序员,但对数据库不友好.所以采取存取路径,再根据路径解析的方法. 一.数据库表设计: 从以上思想出发,需要存图片 ...
- SSM框架实现数据库存储图片及读取图片
SSM框架实现数据库存储图片及读取图片 需求说明 项目实现 数据库设计 类型转换 页面显示数据库中的图片 总结 需求说明 这个案例纯粹是研究用的,以备日后查看,实际中暂时还没接触过此类应用. 需求:在 ...
- 数据库存储图片解决方案
商品图片,用户上传的头像,其他方面的图片.目前业界存储图片有两种做法: 1. 把图片直接以二进制形式存储在数据库中 一般数据库提供一个二进制字段来存储二进制数据.比如mysql中有个blob字段.or ...
- delphi 安卓图片保存数据库_delphi数据库存储图片
delphi数据库存储图片 发布时间:2020-06-24 19:16:33 来源:51CTO 阅读:411 作者:鹅倌 栏目:数据库 --存 str_sql := 'update photo set ...
- 数据库存储图片,且前台从后台拿到图片进行展示
本文提供思路!!! 实现代码还没来得及发博客就被我删除了... 1. 新建photo.Java这个entity,设置一个byte[]属性,用于存储图片的字节数组,存到数据库的,数据库字段使用longb ...
- mysql数据库存储富文本格式_使用格式将富文本框的数据存储到数据库
我是wpf的新手,我想将富文本框的数据及其格式(斜体,彩色,粗体..)存储到数据库(Mysql)中.目前,当我保存数据时,格式化将被忽略.此外,当我将其从数据库加载回富文本框时,它会在同一行中显示所有 ...
- java 向 mysql数据库存储图片_基于java向mysql数据库中存取图片
import java.io.*; import java.sql.*; import java.sql.DriverManager; import java.sql.ResultSet; impor ...
- 转载的一篇存储图片等信息的还不错的文章
商品图片,用户上传的头像,其他方面的图片.目前业界存储图片有两种做法: 1. 把图片直接以二进制形式存储在数据库中 一般数据库提供一个二进制字段来存储二进制数据.比如mysql中有个blob字段.o ...
最新文章
- 短序比对工具 bowtie vs BWA vs Subread vs SOAP vs NovoAlign
- mysql主从复制原理详解_MySQL主从复制没使用过?三大步骤让你从原理、业务上理解透彻...
- python有趣代码-Python有哪些有趣的代码呢,这些代码让
- SAP Spartacus Register 页面为空白的解决方案
- python链接mysql报错2003_Python连接Mysql报错问题解决
- [css] 使用rem布局时怎样合理设置根标签字体大小?
- SpringBoot学习笔记(9)----SpringBoot中使用关系型数据库以及事务处理
- 最通俗易懂的图神经网络(GCN)原理详解
- 关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware解决api接口跨域问题
- Atitit.atiInputMethod v2词库清理策略工具 q229
- hdu 1010 Tempter of the Bone(dfs+奇偶剪枝)
- 【前端安全】常见安全性问题及解决方案
- debugger使用
- vue通过disabled控制按钮的置灰
- 自定义自己的iphone铃声
- 双显卡同时显示多个显示屏
- python怎么播放视频教程_python怎样播放视频?
- YGG:2021年年终回顾
- centos7 oracle11g创建表空间和用户
- 微信无法定位 请打开定位服务器,微信定位是灰色的点不开是怎么回事?该怎么解决问题呢?...
热门文章
- 文墨绘学一千万也换不来一个好孩子
- ubuntu 查看内存及cpu使用情况
- 【学习笔记】FTP创建用户并指定用户主目录
- 完全图解scrollLeft,scrollWidth,clientWidth,offsetWidth【转】
- ICC遇到Severe Error: Fatal error: Placer did not complete. (PSYN-375)
- 电脑开机总是卡到不能动怎么重装系统?
- Grafana+Prometheus+Windows_exporter+Mysql_exporter
- 帕累托分布Pareto distribution
- android电视照片墙,你家电视还在一成不变,有想过把电视藏进照片墙吗?
- 【MySQL】SQL的概念