源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

spring实现jdbctemplate添加事务支持示例

  • 时间:2020-11-16 00:31 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:spring实现jdbctemplate添加事务支持示例
[u]复制代码[/u] 代码如下:
public interface JdbcTemplate extends JdbcOperations { public abstract void beginTranstaion(); public abstract void commit(); public abstract void rollback(); }
[u]复制代码[/u] 代码如下:
public class JdbcTemplateImpl extends org.springframework.jdbc.core.JdbcTemplate implements JdbcTemplate {  private PlatformTransactionManager platformTransactionManager;  private DefaultTransactionDefinition transactionDefinition;  private ThreadLocal<TransactionStatus> transcationStatus = new ThreadLocal<TransactionStatus>();  public void beginTranstaion() {   TransactionStatus tmp = platformTransactionManager.getTransaction(transactionDefinition);   transcationStatus.set(tmp);  }  public void commit() {   TransactionStatus tmp = transcationStatus.get();   if (tmp == null) {    throw new RMSRuntimeException("no transcation");   }   platformTransactionManager.commit(tmp);   transcationStatus.remove();  }  public void rollback() {   TransactionStatus tmp = transcationStatus.get();   if (tmp == null) {    throw new RMSRuntimeException("no transcation");   }   platformTransactionManager.rollback(tmp);   transcationStatus.remove();  }  @Override  public void afterPropertiesSet() {   super.afterPropertiesSet();   transactionDefinition = new DefaultTransactionDefinition();   transactionDefinition.setIsolationLevel(TransactionDefinition.ISOLATION_READ_COMMITTED);   transactionDefinition.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRED);   platformTransactionManager = new DataSourceTransactionManager(getDataSource());  }  public PlatformTransactionManager getPlatformTransactionManager() {   return platformTransactionManager;  }  public DefaultTransactionDefinition getTransactionDefinition() {   return transactionDefinition;  }  public ThreadLocal<TransactionStatus> getTranscationStatus() {   return transcationStatus;  } }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部