纯Java配置SpringMvc中的事务

重要用于纯java配置,配置事务

主要是在这个例子上做二次开发 http://blog.csdn.net/niugang0920/article/details/79448595

主要是增加了 一个TransactionalConfig.java 事务的配置文件

修改了RootConfig.java,及业务层代码UserService.java

 

TransactionalConfig.java

package com.niugang;

import javax.sql.DataSource;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.jdbc.datasource.DataSourceTransactionManager;

import org.springframework.transaction.annotation.EnableTransactionManagement;



/**

* 事务配置文件

*

* @author niugang

*

*/

@Configuration

@EnableTransactionManagement

/*

* 事务具体配置可以参考 @EnableTransactionManagement里面源码的配置

*/

public class TransactionalConfig {

@Bean

public DataSourceTransactionManager dataSourceTransactionManager(DataSource dataSource) {

DataSourceTransactionManager dataSourceTransactionManager = new DataSourceTransactionManager();

dataSourceTransactionManager.setDataSource(dataSource);

return dataSourceTransactionManager;

}

}

RootConfig.java

package com.niugang;

import org.springframework.context.annotation.ComponentScan;

import org.springframework.context.annotation.ComponentScan.Filter;

import org.springframework.context.annotation.Configuration;

import org.springframework.context.annotation.FilterType;

import org.springframework.context.annotation.Import;

import org.springframework.web.servlet.config.annotation.EnableWebMvc;

/**

* 上下文配置

* @author niugang

*

*/

@Configuration

@ComponentScan(basePackages={"con.niugang"},

excludeFilters={

@Filter(type=FilterType.ANNOTATION, value=EnableWebMvc.class)

}

)

//在上下文中引入jdbc配置文件,事务配置文件

@Import({JdbcConfig.class,TransactionalConfig.class})

public class RootConfig {

}

 

UserService.java

 

package com.niugang.service;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;

import org.springframework.transaction.annotation.Transactional;

import com.niugang.dao.UserDao;

import com.niugang.entity.User;

@Service

public class UserService {

@Resource

private UserDao userDao;



public List<User> queryList() {

return userDao.queryList();

}



@Transactional

public void save(User user) {

userDao.save(user);

throw new RuntimeException("数据库访问异常");

}

public User get(int id) {

return userDao.get(id);

}

public void delete(int id) {

userDao.delete(id);

}

}

      

微信公众号 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值