博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java读取lob格式数据
阅读量:6881 次
发布时间:2019-06-27

本文共 1683 字,大约阅读时间需要 5 分钟。

想要读出lob里面的图片数据,就要确认clob里面存储的是什么,一般情况下存储的base64的串串.所以就以base64为例,而Blob里面存储的大部分是图片数据,但也有xml内容数据.

1查询lob字段内容

Clob clob = rs.getClob(fieldName); Blob blob = rs.getBlob(fieldName);

2base64解码

private byte[] getClobData(Clob clob){        byte[] bt = null;        BASE64Decoder decoder = new BASE64Decoder();        try {            String base64Str = clob.getSubString(1, (int) clob.length());            bt = decoder.decodeBuffer(base64Str);        } catch (Exception e) {            logger.error("读取clob数据出错", e);        }        return bt;    }
private byte[] getBlobData(Blob blob) {        BufferedInputStream is = null;        byte[] bt = null;        try {            is = new BufferedInputStream(blob.getBinaryStream());            int bufferSize = (int)blob.length();            bt = new byte[bufferSize];            try {                is.read(bt, 0, bufferSize);            } catch (Exception e) {                logger.error("读取Blob数据出错", e);            }        } catch (Exception e) {            logger.error("读取Blob字段内容出错", e);        } finally {            if (is != null) {                try {                    is.close();                } catch (Exception e) {                }                is = null;            }        }        return bt;    }

3lob数据保存到本地

private void saveDataToLocal(byte[] bt){        try{            String fileName = "E:/test.jpg";    //String fileName = "E:/test.xml"            FileOutputStream out= null;            out= new FileOutputStream(fileName);            out.write(bt, 0, bt.length);            out.close();        }catch(Exception e){            e.printStackTrace();        }    }

 

转载于:https://www.cnblogs.com/fxust/p/7459888.html

你可能感兴趣的文章
MySQL主从复制与读写分离
查看>>
从网卡发送数据再谈TCP/IP协议—网络传输速度计算-网卡构造
查看>>
android R文件丢失(R.java was modified manually! Reverting to generated version!)
查看>>
The Definitive Guide to Drupal 7
查看>>
部署ffmpeg及amr转mp3方法
查看>>
如何获取重载函数的地址 - 回复 "flq_00000" 的问题
查看>>
SPL笔记之双向链表
查看>>
论迭代式开发模式吸纳用户建议的困难度
查看>>
Delphi 2010 新增功能之: Rtti 单元(5): 获取方法的更多信息
查看>>
day2-Samba
查看>>
JavaScript 实现全角转半角 中文标点替换成英文标点
查看>>
Objective-c学习笔记(三)oc 多输入参数的方法及协议的使用及变量
查看>>
Linux学习笔记——文件操作
查看>>
shell实例-磁盘容量监控
查看>>
IntelliJ IDEA使用笔记
查看>>
Memcache集群的安装和配置
查看>>
Oracle的使用笔记
查看>>
Hadoop URL中读取数据出错:unknown protocol: hdfs
查看>>
Docker: Mac OS X 挂载非 /Users 下的目录
查看>>
Apache服务器安装与配置详解
查看>>