更改applicationContext-hibernate.xml文件为
  <beans>     <!-- Hibernate SessionFactory -->     <bean id="sessionFactory" class="org.springframework.orm.hibernate.LocalSessionFactoryBean">         <property name="dataSource"><ref bean="dataSource"/></property>         <property name="mappingResources">             <list>                 <value>model/Role.hbm.xml</value>                   ......                <value>model/policy/Policycontent.hbm.xml</value>             </list>         </property>                  <property name="lobHandler"><ref bean="oracleLobHandler"/></property>                  <property name="hibernateProperties">            <props>                 <prop key="hibernate.dialect">net.sf.hibernate.dialect.Oracle9Dialect</prop>                <prop key="hibernate.show_sql">true</prop>                <prop key="hibernate.jdbc.batch_size">15</prop>            </props>         </property>     </bean> 
    <bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler" lazy-init="true">         <property name="nativeJdbcExtractor"><ref local="nativeJdbcExtractor"/></property>     </bean> 
    <bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.SimpleNativeJdbcExtractor">     </bean> 
    <!-- Transaction manager for a single Hibernate SessionFactory (alternative to JTA) -->     <bean id="transactionManager" class="org.springframework.orm.hibernate.HibernateTransactionManager">         <property name="sessionFactory"><ref local="sessionFactory"/></property>     </bean> 
    <!-- LookupDAO: Hibernate implementation -->     <bean id="lookupDAO" class="cn.perfectsoft.hiserviceapp.dao.hibernate.LookupDAOHibernate">         <property name="sessionFactory"><ref local="sessionFactory"/></property>     </bean>        ...... 
    <!-- policyTypeDAO: Hibernate implementation -->     <bean id="policyTypeDAO" class="cn.perfectsoft.hiserviceapp.dao.hibernate.policy.PolicyTypeDAOHibernate">         <property name="sessionFactory"><ref local="sessionFactory"/></property>     </bean> </beans> 
在hbm.xml文件中的数据库CLOB类型的映射改为spring提供的ClobStringType
      <property         name="policycontent"         type="org.springframework.orm.hibernate.support.ClobStringType"         column="POLICYCONTENT"         length="9000000"//可以在这里定义CLOB使用的大小,而oracle中最大可以使用2G的容量     >     </property> 
不要使用hibernate提供的net.sf.hibernate.type.TextType类型 
model层的java文件使用String类型即可
  利用此配置,完善了AppFuse项目中针对Oracle的CLOB类型不能存储超过4000字符的限制  
 
  |