从oracle中读取blob图片资源
来源:互联网 发布:软件体系结构设计文档 编辑:程序博客网 时间:2024/05/17 23:11
1.对应图片资源这张表创建对应的实体类
Ibatisblob.java
private byte[] picresult;public byte[] getPicresult() { return picresult; }public void setPicresult(byte[] picresult) { this.picresult = picresult; }
2.Dao层中的Dao.java和对应的映射文件sqlmap.xml
Dao.java
public List pic(Map map) { return this.getSqlMapClientTemplate().queryForList("pic",map); }
sqlmap.xml
<sqlMap namespace="**" > <typeAlias alias="ibatisblob" type="cn.**.dao.IbatisBlob" /><select id="pic" parameterClass="java.util.HashMap" resultClass="ibatisblob"> select pic from PICRESULT t where t.ispic = 1 and t.id = #id# and t.name= #name# </select>
3.service层处理
//获取查询 lllDao llis = (Dao) SpringBeansUtil.getBean("lllDao"); Map<String,String> map1 = new HashMap<String,String>(); //填写参数 map1.put("id", id); map1.put("name", name); //1.接收二进制的图片 List<IbatisBlob> imgResource = llis.pic(map1); String str1 = null; if(imgResource != null && imgResource.size()>0) { byte[] picresult = imgResource.get(0).getPicresult(); //加密运算之后 将byte[]转化为base64 byte[] encodeBase64 = Base64.encodeBase64(picresult); str1 = new String(encodeBase64); } //按照base64进行解密 byte[] decodeBase64 = Base64.decodeBase64(encodeBase64); byte2image(decodeBase64, "G:\\1\\2.jpeg");
图片与字节数组相互转换
//图片到byte数组 public byte[] image2byte(String path){ byte[] data = null; FileImageInputStream input = null; try { input = new FileImageInputStream(new File(path)); ByteArrayOutputStream output = new ByteArrayOutputStream(); byte[] buf = new byte[1024]; int numBytesRead = 0; while ((numBytesRead = input.read(buf)) != -1) { output.write(buf, 0, numBytesRead); } data = output.toByteArray(); output.close(); input.close(); } catch (FileNotFoundException ex1) { ex1.printStackTrace(); } catch (IOException ex1) { ex1.printStackTrace(); } return data; }/////////////////////////////////////byte数组到图片 public void byte2image(byte[] data,String path){ if(data.length<3||path.equals("")) return; try{ FileImageOutputStream imageOutput = new FileImageOutputStream(new File(path)); imageOutput.write(data, 0, data.length); imageOutput.close(); System.out.println("Make Picture success,Please find image in " + path); } catch(Exception ex) { System.out.println("Exception: " + ex); ex.printStackTrace(); } } //byte数组到16进制字符串 public String byte2string(byte[] data){ if(data==null||data.length<=1) return "0x"; if(data.length>200000) return "0x"; StringBuffer sb = new StringBuffer(); int buf[] = new int[data.length]; //byte数组转化成十进制 for(int k=0;k<data.length;k++){ buf[k] = data[k]<0?(data[k]+256):(data[k]); } //十进制转化成十六进制 for(int k=0;k<buf.length;k++){ if(buf[k]<16) sb.append("0"+Integer.toHexString(buf[k])); else sb.append(Integer.toHexString(buf[k])); } return "0x"+sb.toString().toUpperCase(); }
阅读全文
0 0
- 从oracle中读取blob图片资源
- 从oracle中读取blob字段
- Java从Oracle读取Blob显示图片在页面
- Oracle中Blob读取
- JSP Oracle BLOB 图片读取
- 从数据库中读取Blob对象图片并显示
- 从数据库中读取blob字段并生成图片文件
- 从数据库中读取Blob对象图片并显示
- hibernate从sqlserver数据库中读取图片 Image (Blob)
- 从数据库中读取Blob对象图片并显示
- Java从数据库中读取Blob对象图片并显示
- 从Oracle中数据库中读取以Blob类型存储的图片显示在jsp页面中
- Oracle中读取&&存储blob类型存储的图片(待用)
- 从资源中读取图片 GDI+
- grails从数据库读取blob显示图片
- 从资源文件读取图片
- java中如何读取ORACLE中BLOB字段存储的图片
- Android从assets中读取文本和图片资源
- GridView 的基础知识
- 通达oa破解版|通达oa破解补丁|通达oa破解版下载2017
- 【年终总结】终归平静
- 如何实现远程连接(SSH)iPhone/iPad?
- POJ 3281 Dining 网络流
- 从oracle中读取blob图片资源
- 2017.9.1 开学就考试
- C/C++文件操作函数使用总结
- Android开发,自定义View的学习合集
- 将一棵树转换为二叉树
- CLPlacemark地理位置属性
- 常用媒体查询以及手机横竖屏监听
- .NET Core 在程序集中集成Razor视图
- 图片选择器