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

hibernate应用之:处理clob类型

2012-09-02 
hibernate使用之:处理clob类型参见原文:http://wangrui.iteye.com/blog/178924。我的处理方法如下:一、Model

hibernate使用之:处理clob类型
参见原文:http://wangrui.iteye.com/blog/178924。
我的处理方法如下:
一、Model中的数据成员类型为String,映射的数据库字段类型为org.springframework.orm.hibernate.support.ClobStringType

/**
* 电影信息Model
*/
@Entity
@Table(name = "BK_CTT_MOVIE")
@SuppressWarnings("serial")
public class MovieModel extends BaseModel implements Serializable {
    @Id
    private long id;
    @Column(name = "STARS")
    @Type(type="org.springframework.orm.hibernate3.support.ClobStringType")
    private String stars;

    ....get/set方法
}

二、如果使用spring的这个clob类型就需要在applicationContext.xml中的sessionFactory里修改如下配置

  <bean id="oracleLobHandler"   
     ref="nativeJdbcExtractor" /> 
  </bean>
 
  <bean id="nativeJdbcExtractor"   
/>

  <!--  ADD PERSISTENCE SUPPORT HERE (jpa, hibernate, etc)  -->
  <bean id="sessionFactory" ref="dataSource"></property>
    <property name="configLocation" value="classpath:hibernate.cfg.xml"></property>
    <property name="hibernateProperties">
      <value>
                hibernate.dialect=${hibernate.dialect}
                hibernate.query.substitutions=true 'Y', false 'N'
                hibernate.show_sql=true
                hibernate.cache.use_second_level_cache=true
                hibernate.cache.use_query_cache=true
                hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
                hibernate.jdbc.batch_size=50
                hibernate.jdbc.use_streams_for_binary=true
            </value>
            <!--  Turn batching off for better error messages under PostgreSQL  -->
            <!--  hibernate.jdbc.batch_size=0  -->
    </property>
    <property name="lobHandler" ref="oracleLobHandler" />
  </bean>

三、第三步没有修改为使用oci10,依然使用jdbc:oracle:thin连接方式。使用noticeManager.save(notice); 
即可以正常保存的。

热点排行