spring事务配置及事务测试

spring事务配置及事务测试

方法一:
事务配置:applicatoncontext.xml
 1 <!--  配置事务管理器  -->
 2      < bean  id ="transactionManager"
 3         class ="org.springframework.orm.hibernate3.HibernateTransactionManager" >
 4          < property  name ="sessionFactory" >
 5              < ref  local ="sessionFactory"   />
 6          </ property >
 7      </ bean >
 8      <!---->
 9      < bean  id ="txProxyTemplate"  abstract ="true"
10         class ="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" >
11          < property  name ="transactionManager" >
12              < ref  bean ="transactionManager"   />
13          </ property >
14          < property  name ="transactionAttributes" >
15              < props >
16                  < prop  key ="query*" > PROPAGATION_REQUIRED,readOnly,-Exception </ prop >
17                  < prop  key ="find*" > PROPAGATION_REQUIRED,readOnly,-Exception </ prop >
18                  < prop  key ="add*" > PROPAGATION_REQUIRED,-Exception </ prop >
19                  < prop  key ="update*" > PROPAGATION_REQUIRED,-Exception </ prop >
20                  < prop  key ="delete*" > PROPAGATION_REQUIRED,-Exception </ prop >
21                  < prop  key ="save*" > PROPAGATION_REQUIRED,-Exception </ prop >
22              </ props >
23          </ property >
24      </ bean >
事务测试(BO继承事务):applicationcontext.xml
< bean  id ="SysJobBO"  parent ="txProxyTemplate" >
        
< property  name ="target" >
            
< bean
                
class ="com.gzlt.sys.user.bo.impl.SysJobBOImpl" >
                
< property  name ="commonDAO"
                    ref
="CommonDAO" >
                
</ property >
            
</ bean >
        
</ property >
    
</ bean >

BOIMPL中:

    @Override
    public boolean updates(SysJob sysJob) throws Exception {
        // TODO Auto-generated method stub
        commonDAO.add(sysJob);
        sysJob.setIsLeaf("453322222222222222ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss");
        commonDAO.add(sysJob);
        return true;
    }

如果事务未起作用,请查看:
1、action中的方法是不是不以add,update,。。开头。
2、有可能是抛出的异常将事务舍弃了。 如果try catch   异常为 applicationException  请改为  applicationException 试试。

方法二:
 

你可能感兴趣的:(spring事务配置及事务测试)