Spring配置使用编程式事务

配置文件:

 

  < bean  id ="dataSource"  class ="org.springframework.jdbc.datasource.DriverManagerDataSource" >
      
< property  name ="driverClassName" >
         
< value > com.sybase.jdbc3.jdbc.SybDriver </ value >
       
</ property >
       
< property  name ="url" >
         
< value > jdbc:sybase:Tds:192.168.0.10:4100/DB_CENTER?charset=eucgb &amp; jconnect_version=4
         
</ value >
       
</ property >
       
< property  name ="username" >
         
< value > sa </ value >
       
</ property >
       
< property  name ="password" >
         
< value ></ value >
       
</ property >
   
</ bean >
    
< bean  id ="TransactionManager"  class ="org.springframework.jdbc.datasource.DataSourceTransactionManager" >
         
< property  name ="dataSource" >
             
< ref  bean ="dataSource" />
         
</ property >
    
</ bean >  
    
< bean  id ="sessionFactory"
        class
="org.springframework.orm.hibernate3.LocalSessionFactoryBean" >
        
< property  name ="dataSource" >
            
< ref  local ="dataSource"   />
        
</ property >
        
< property  name ="hibernateProperties" >
            
< props >
                
< prop  key ="hibernate.dialect" >
                    org.hibernate.dialect.SybaseDialect
                
</ prop >
                
< prop  key ="hibernate.show_sql" > false </ prop >
                
< prop  key ="hibernate.cache.use_query_cache" > true </ prop >
                
< prop  key ="hibernate.cache.provider_class" >
                    org.hibernate.cache.HashtableCacheProvider
                
</ prop >
            
</ props >
        
</ property >
        
< property  name ="mappingResources" >
           
< list >  
             
< value > com/bjjdsy/ky/zl/domain/ZlStationTab.hbm.xml </ value >
           
</ list >
        
</ property >
    
</ bean >

    
< bean  id ="transactionTemplate"  class ="org.springframework.transaction.support.TransactionTemplate" >
      
< property  name ="transactionManager" >
        
< ref  bean ="TransactionManager" />
      
</ property >
    
</ bean >
    
< bean  id ="courseService"  class ="com.test.CourseService" >
      
< property  name ="transactionTemplate" >
        
< ref  bean ="transactionTemplate" />
      
</ property >
    
</ bean >

回调函数代码:

private  TransactionTemplate transactionTemplate;
    
public   void  enrollStudent() {
        transactionTemplate.execute(
new TransactionCallback(){
            
public Object doInTransaction(TransactionStatus ts){
                
try {
//                    需要事务控制的方法代码
                }
 catch (Exception e) {
                    ts.setRollbackOnly();  
//回滚
                }

                
return null;  //事务提交
            }
    
        }
);
    }

}

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值