做一个CLOB字段的插入与更新,实体类用myeclipse-DBbrowser映射的,字段类型为String(当时有点纳闷),注解为@Lob,直接将字符串set到该字段,保存成功没毛病。
更新的时候发现update操作无法成功,报long类型的列只能插long值,原因是oracle自动将该字符串转成了long,转了就不能存到该Clob里去了,报这个错,依此寻答案,遍寻不获,无奈按原始的hibernate.clobcreator,得知hibernate已弃用该法,但有个lobhelper接口可供调用,于是乎改实体类该字段类型java.sql.Clob,结果一次都没存进去。
期间改驱动,改注解,改hibernate--Clob操作,一 一无果,然在看注解时发现少了一行,也许有用,果断加上,有用,
实际就是那一行注解,实体类(该字段仍是String)、保存更新方法都不用改。注解如下:
@Column(name = "CONTENT", ---------》columnDefinition="CLOB")