Spring事务不起作用……

来源:百度知道 编辑:UC知道 时间:2024/05/09 11:13:45
这只是一个简单的登陆实现
配置事务的代码:
<bean id="LoginBusinessProxy"
class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager">
<ref bean="transactionManager" />
</property>
<property name="target">
<ref local="loginBusiness" />
</property>
<property name="transactionAttributes">
<props>
<prop key="search*">PROPAGATION_REQUIRED,readOnly</prop>
<prop key="update*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>

dao代码:
//更新登陆时间
public void updateDateTime(final AdminTable at) {
getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session)throws HibernateException{

这种问题,你应该先贴出自己项目中事务处理的xml配置,不然别人也无从下手。 这是我现在用的SpringMvc+mybatis项目的事物配置,你可以参考下

<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>

<!-- 配置事务的传播特性 此为advice ,把这个advice 圈定到pointcut所指向的方法-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<tx:attributes>
<tx:method name="add*" propagation="REQUIRED"/>
<tx:method name="del*" propagation="REQUIRED"/>
<tx:method name="modify*" propagation="REQUIRED"/>
<tx:method name="login" propagation="REQUIRED"/>
<!-- 只读,不需要更新,所以减少了步骤,优化 -->
<tx:method name="*" read-only="true"/>