spring—编程式事物管理
来源:互联网 发布:mysql用户密码修改 编辑:程序博客网 时间:2024/06/05 14:47
1.benas.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<beansxmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<!-- 数据库连接池的配置 -->
<beanid="dataSource"class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close">
<propertyname="driverClassName"value="${jdbc.driverClassName}"/>
<propertyname="url"value="${jdbc.url}"/>
<propertyname="username"value="${jdbc.username}"/>
<propertyname="password"value="${jdbc.password}"/>
</bean>
<!-- jdbc事务管理器 -->
<beanid="transactionManager"class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<propertyname="dataSource"ref="dataSource"></property>
</bean>
<beanid="transactionTemplate"class="org.springframework.transaction.support.TransactionTemplate">
<propertyname="transactionManager"ref="transactionManager"></property>
</bean>
<context:property-placeholderlocation="jdbc.properties"/>
<!-- jdbcTemplate的配置 -->
<beanid="namedParameterJdbcTemplate"class="org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate">
<constructor-argref="dataSource"></constructor-arg>
</bean>
<!-- 上面的全可以直接调用不用修改,如果要改数据库配置就改jdbc.properties -->
<beanid="bankDao"class="com.lidongyang.dao.impl.BankDaoImpl">
<propertyname="namedParameterJdbcTemplate"ref="namedParameterJdbcTemplate"></property>
</bean>
<beanid="bankService"class="com.lidongyang.service.impl.BankServiceImpl">
<propertyname="bankDao"ref="bankDao"></property>
<propertyname="transactionTemplate"ref="transactionTemplate"></property>
</bean>
</beans>
2.package com.lidongyang.service.impl;
import org.springframework.transaction.TransactionStatus;
import org.springframework.transaction.support.TransactionCallbackWithoutResult;
import org.springframework.transaction.support.TransactionTemplate;
import com.lidongyang.dao.Bank;
import com.lidongyang.service.BankService;
public class BankServiceImpl implements BankService{
private Bank bankDao;
private TransactionTemplate transactionTemplate;
public void setTransactionTemplate(TransactionTemplate transactionTemplate) {
this.transactionTemplate = transactionTemplate;
}
public void setBankDao(Bank bankDao) {
this.bankDao = bankDao;
}
@Override
public void TransactionMoney( final int money, final int userIdA, final int userIdB) {
// TODO Auto-generated method stub
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus arg0) {
// TODO Auto-generated method stub
bankDao.outMoney(userIdA,money );
bankDao.inMoney(userIdB,money );
}
});
}
}
0 0
- spring—编程式事物管理
- Spring编程式事物管理案例
- Spring管理事物应用到实际的项目中--编程式事物
- Spring 声明式事物 和 编程式事物
- spring 编程式事务管理—PlatformTransactionManager
- spring 编程式事务管理—PlatformTransactionManager
- Spring编程式事务
- Spring编程式事务
- SPRING 编程式事务管理
- spring 编程式事务
- spring编程式事务
- spring编程式事务
- spring编程式事务
- Spring编程式事务管理
- Spring编程式事务管理
- spring编程式事务管理
- spring 编程式事务
- spring编程式事务管理
- Spring注解@Component、@Repository、@Service、@Controller区别
- Json
- test
- 声明式事物管理
- 信号量、互斥锁、条件变量(类似waitforsingleobject)
- spring—编程式事物管理
- I/O流
- 商业研究(22):股权投资,大有可为?
- mysqldump: Got error: 1066: Not unique table/alias: 'dept' when using LOCK TABLES
- Java 实现生产者与消费者
- poj1275 Cashier Employment(差分约束)
- maven 添加本地jar依赖
- Fresco图片框架内部实现原理探索
- 我的Android学习之路(1)—初体验