1、对存储大数据的LOB类型,JPA只要在Entiry中注解@LOB即可
LOB 代表大对象数据,包括 BLOB 和 CLOB 两种类型,前者用于存储大块的二进制数据,如图片数据,视频数据等,而后者用于存储长文本数据,如论坛的帖子内容,产品的详细描述等。值得注意的是:在不同的数据库中,大对象对应的字段类型是不尽相同的,如 DB2 对应 BLOB/CLOB,MySql 对应 BLOB/LONGTEXT,SqlServer 对应 IMAGE/TEXT。需要指出的是,有些数据库的大对象类型可以象简单类型一样访问,如 MySql 的 LONGTEXT 的操作方式和 VARCHAR 类型一样。在一般情况下, LOB 类型数据的访问方式不同于其它简单类型的数据,我们经常会以流的方式操作 LOB 类型的数据。此外,LOB 类型数据的访问不是线程安全的,需要为其单独分配相应的数据库资源,并在操作完成后释放资源。
(参考:http://www.ibm.com/developerworks/cn/java/j-lo-spring-lob/)
我在save/update COB类型的数据时,c3p0连接池报错:
java.lang.AbstractMethodError: com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.setCharacterStream(ILjava/io/Reader;J)V
上网查找资料,发现是0.9.1.2版本的c3p0中没有setCharacterStream方法,于是下载c3p0-0.9.5.1.jar,放到本地资源库,下次update/save的时候就不报错了。
时间: 2024-10-13 11:52:28