阅读量:0
在 MyBatis 中,可以通过配置数据源和事务管理器来实现事务管理。以下是配置 Druid 数据源和事务管理器的示例:
- 配置 Druid 数据源:
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean>
- 配置事务管理器:
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <property name="dataSource" ref="dataSource" /> </bean>
- 配置 MyBatis SqlSessionFactory:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath*:mapper/*.xml" /> </bean>
- 配置 MyBatis SqlSessionTemplate:
<bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate"> <constructor-arg index="0" ref="sqlSessionFactory" /> </bean>
- 在需要进行事务管理的方法上添加
@Transactional
注解来开启事务:
@Service public class UserService { @Autowired private UserMapper userMapper; @Transactional public void updateUser(User user) { userMapper.updateUser(user); } }
通过以上配置,可以实现在使用 Druid 数据源和 MyBatis 的情况下进行事务管理。在需要进行事务管理的方法上添加 @Transactional
注解,Spring 会自动管理事务的提交和回滚。