当前位置: 代码迷 >> Java Web开发 >> spring集成hibernate后事务处理问题
  详细解决方案

spring集成hibernate后事务处理问题

热度:885   发布时间:2008-08-20 11:06:27.0
spring集成hibernate后事务处理问题
小弟现在想把spring与hibernate集成到一起,在网上找了很多次资料,终于把配置文件写好,可是出现一问题,我如果用spring处理hibernate的事务问题,就会出现,比如添加一条数据后数据库里不加,但也不报错

这是spring配置文件

<bean id="mySessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">  
  <property name="configLocation">  
  <value>classpath:hibernate.cfg.xml </value>  
  </property>  
</bean>  

<!--dao.imp.BeanDaoImp是我的实现类-->
<bean id="UsersDAO" class="dao.imp.BeanDaoImp">  
  <property name="sessionFactory">  
  <ref bean="mySessionFactory" />  
  </property>  
</bean>
  
  
<bean id="transactionmanager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory">
        <ref local="mySessionFactory"/>
        </property>
</bean>


<bean id="userDaoProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
<property name="transactionManager" ref="transactionmanager"/>
<property name="proxyInterfaces">
<list>
<value>dao.BeanDao </value>
</list>
</property>
<property name="target" ref="UsersDAO"> </property>
<property name="transactionAttributes">
    <props>
    <prop key="add*">PROPAGATION_REQUIRED </prop>
    <prop key="update*">PROPAGATION_REQUIRED </prop>
    <prop key="delete*">PROPAGATION_REQUIRED </prop>
    <prop key="get*">PROPAGATION_REQUIRED </prop>
    </props>
        </property>

<!--这个我也不知道是什么意思,网上找的加上试试不报错也还是加不进去-->
<property name="proxyTargetClass">
        <value>true </value>
  </property>

</bean>


我发现如果我在hibernate配置文件里加入一行
<property name="hibernate.connection.autocommit" >true </property>
然后spring配置文件里就写
bean id="mySessionFactory"
bean id="UsersDAO"
这两个就可以了,就能加入数据,可是这样是不是就不是spring帮我管理事务了,我让spring帮我管理事务还是不行,也不报错
搜索更多相关主题的帖子: spring  hibernate  事务  

----------------解决方案--------------------------------------------------------
  相关解决方案