开发者博客:www.developsearch.com
项目中需要用到Clob,自己以前虽然对此有些了解,但并没有写过代码.而Google的结果很多却没什么和自己的项目比较相近的.算了自己搞吧.
工程中使用SSH frameworks,因此着手点无非就是对Hibernate进行ORM mapping.
下面给出我自己的配置.比较简单,但很实用,通过测试.运行无问题.
POJO类中内容字段:content 声明:private java.sql.Clob content;
foo.hbm.xml 映射文件片段<property name="content" column="content" type="clob" />
将字符串转换为Clob对象
Clob clob = Hibernate.createClob("要存取的内容");
obj.setContent(clob);
这样便完成了存的操作.
从Clob中获取字符串
由于Clob特殊的存储格式,因此必须使用IO来进行处理.
我写了个通用的静态方法,用来进行转换
public static String clob2String(Clob clob) {
StringBuilder strBuilder = new StringBuilder("");
BufferedReader reader=null;
if (null != clob) {
try {
reader = new BufferedReader(clob.getCharacterStream());
} catch (SQLException e) {
e.printStackTrace();
}
String st = "";
try {
while (null != (st = reader.readLine())) {
strBuilder.append(st+"\r\n");
}
} catch (IOException e) {
e.printStackTrace();
}
}
return strBuilder.toString();
}