这里的Blob数据类型指的是保存了文本的blob数据类型
直接读取blob类型存储的文本,可能会出现乱码,所以需要读取完后进行手动转码
这里使用ibatis作为持久层
SELECT urlcontent FROM table_name WHERE pk = #pk#
resultClass="hashmap"
Dao中
Map map = (Map)sqlMap.quertForObject(...)
Blob blob = (Blob)map.get("urlcontent");
byte[] bytes = new byte[(int)blob.length()];
InputStream is = blob.getBinaryStream();
String str_gbk = "";
for(int i = 0;(i = is.read(bytes))>0;){
str_gbk += new String(bytes,"GBK");
}
is.close();
.....
存入Oracle
将待保存字符串转化成byte数组,保存在Map中,将Map作为参数传递给iBatis