首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 开源软件 >

Spring+Hibernate环境停CLOB字段值的处理

2012-07-03 
Spring+Hibernate环境下CLOB字段值的处理软件环境:???? Spring:2.5.4???? Hibernate:3.2.6???? Oracle:9i?

Spring+Hibernate环境下CLOB字段值的处理

软件环境:

???? Spring:2.5.4

???? Hibernate:3.2.6

???? Oracle:9i

???? 驱动:ojdbc14.jar

?

Spring关键配置信息:

?

<bean id="nativeJdbcExtractor" lazy-init="true"> <property name="nativeJdbcExtractor"> <ref local="nativeJdbcExtractor"/> </property> </bean> <!-- 如果是Oracle 10g,则可以直接用 --> <!-- <bean id="oracleLobHandle" lazy-init="true" ref="dataSource" /> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect"> org.hibernate.dialect.Oracle10gDialect </prop> <prop key="hibernate.show_sql">false</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.cache.provider_class"> org.hibernate.cache.EhCacheProvider </prop> <prop key="hibernate.cache.use_query_cache">false</prop> </props> </property> <property name="lobHandler" ref="oracleLobHandle" /> </bean>

?

?? 在SessionFactory bean中增加lobHandler属性的使用。

实体类的用法:

 @Entity @Table(name = "ASY_TEST" ) public class TestInfo extends BaseDomain { private String title; private String contents; @Column(name = "TITLE") public String getTitle() { return title; } public void setTitle(String title) { this.title = title; } @Column(name = "CONTENTS") @Type(type="org.springframework.orm.hibernate3.support.ClobStringType") public String getContents() { return contents; } public void setContents(String contents) { this.contents = contents; } } 

?

??

?数据库字段类型是CLOB

???? java属性类型是String,需要用org.springframework.orm.hibernate3.support.ClobStringType指定

?

字段值的存储跟一般字段类型一样。

热点排行