最近需要把大字段文本放入数据库 想想 clob吧 然后 就是各种百度 各种报错
@Lob
@Basic(fetch = FetchType.EAGER)
@Column(name = "S_BINFO", columnDefinition = "CLOB")
private Clob Sbinfo;
抄来的是用string类型 能放进数据库 然后 取出来 就报代理对不上数据类型了 好吧 来个工具类 把Clob 跟string 来个转换吧
/**
* clob 转string
*
* @param clob
* @return
* @throws SQLException
* @throws IOException
*/
public static String Clob2String(Clob clob) throws SQLException, IOException {
String reString = "";
Reader is = clob.getCharacterStream();// 得到流
BufferedReader br = new BufferedReader(is);
String s = br.readLine();
StringBuffer sb = new StringBuffer();
while (s != null) {// 执行循环将字符串全部取出付值给StringBuffer由StringBuffer转成STRING
sb.append(s);
s = br.readLine();
}
reString = sb.toString();
return reString;
}
/**
* 字符串转clob
* @param s
* @return
* @throws SerialException
* @throws SQLException
*/
public static Clob String2Clob(String s) throws SerialException, SQLException {
return new SerialClob(s.toCharArray());
}
测试完事 总算能对上号了 还有一个关于 输出数据的问题 后续更新吧 如果有哪位大神 看到了帮忙回下 库表中包含blob或clob 查询 及删除 相关