当前位置: 首页 > news >正文

天津 响应式网站设计seo排名外包

天津 响应式网站设计,seo排名外包,连锁网站开发,淄博网站建设yx7181.2 事务管理器TransactionManager org.springframework.transaction.TransactionManager没有任何方法,仅作为类型标识,通常使用接口org.springframework.transaction.PlatformTransactionManager,该接口提供三个方法处理事务。事务管理器的类图如下: 其中AbstractPlatfor…

1.2 事务管理器TransactionManager

org.springframework.transaction.TransactionManager没有任何方法,仅作为类型标识,通常使用接口org.springframework.transaction.PlatformTransactionManager,该接口提供三个方法处理事务。事务管理器的类图如下:

在这里插入图片描述

其中AbstractPlatformTransactionManager类是PlatformTransactionManager接口的基础实现,里面有事务管理器的公共逻辑。在不同场景使用的事务管理器在它的基础上完善细节。

数据访问技术实现
JDBCDataSourceTransactionManager
JPAJpaTransactionManager
HibernateHibernateTransactionManager
JTAJtaTransactionManager
1.2.1 TransactionStatus

org.springframework.transaction.TransactionStatus接口继承了TransactionExecution和SavepointManager两个接口,因此可以使用TransactionStatus对象查看事务的执行情况和进行savepoint操作。在DefaultTransactionStatus实现类中,savepoint操作是委托给transaction对象实现的,该对象必须也必须实现SavepointManager接口

在这里插入图片描述

1.3 AbstractPlatformTransactionManager

该类抽象了TransactionManager的工作逻辑,也是上面提到的所有TransactionManager的父类

1.3.1 getTransaction
	@Overridepublic final TransactionStatus getTransaction(@Nullable TransactionDefinition definition)throws TransactionException {// Use defaults if no transaction definition given.TransactionDefinition def = (definition != null ? definition : TransactionDefinition.withDefaults());Object transaction = doGetTransaction(); // 调用子类的实现获取事务对象boolean debugEnabled = logger.isDebugEnabled();// 判断当前是否已经存在事务。该方法默认返回false,但是子类都会有自己的实现// 判断是否是否已经存在,主要用于处理事务的propagation逻辑if (isExistingTransaction(transaction)) {// Existing transaction found -> check propagation behavior to find out how to behave.return handleExistingTransaction(def, transaction, debugEnabled);}// PROPAGATION_MANDATORY表示需要有事务,没有事务将报错if (def.getPropagationBehavior() == TransactionDefinition.PROPAGATION_MANDATORY) {throw new IllegalTransactionStateException("No existing transaction found for transaction marked with propagation 'mandatory'");}else if (def.getPropagationBehavior() == TransactionDefinition.PROPAGATION_REQUIRED ||def.getPropagationBehavior() == TransactionDefinition.PROPAGATION_REQUIRES_NEW ||def.getPropagationBehavior() == TransactionDefinition.PROPAGATION_NESTED) {// 暂停前一个事务,通常为null,返回SuspendedResourcesHolder对象,用于恢复前一个事务SuspendedResourcesHolder suspendedResources = suspend(null);try {return startTransaction(def, transaction, debugEnabled, suspendedResources);}catch (RuntimeException | Error ex) {// 如果异常了,恢复前一个事务resume(null, suspendedResources);throw ex;}}else { // 用户自定义的传播级别// Create "empty" transaction: no actual transaction, but potentially synchronization.if (def.getIsolationLevel() != TransactionDefinition.ISOLATION_DEFAULT && logger.isWarnEnabled()) {logger.warn("Custom isolation level specified but no actual transaction initiated; " +"isolation level will effectively be ignored: " + def);}boolean newSynchronization = (getTransactionSynchronization() == SYNCHRONIZATION_ALWAYS);return prepareTransactionStatus(def, null, true, newSynchronization, debugEnabled, null);}}

开始一个事务

/*** Start a new transaction.*/
private TransactionStatus startTransaction(TransactionDefinition definition, Object transaction,boolean debugEnabled, @Nullable SuspendedResourcesHolder suspendedResources) {// 默认为trueboolean newSynchronization = (getTransactionSynchronization() != SYNCHRONIZATION_NEVER);// 获取status对象DefaultTransactionStatus status = newTransactionStatus(definition, transaction, true
http://www.yidumall.com/news/31800.html

相关文章:

  • 南京制作网站公司杭州排名优化公司
  • 物流公司做网站哪家好百度站长平台官网
  • 江苏泰州建设局网站湖南seo博客seo交流
  • 花垣县建设局网站东莞seo外包公司
  • 什么是最经典最常用的网站推广方式app关键词优化
  • 成都网站建设高端免费外国网站浏览器
  • 自建团体电子商务网站建设成本搜索引擎平台排名
  • 中国住房和城乡建设网网站市场营销考试题目及答案2022
  • 网站首页布局自适应专业恶意点击软件
  • 怀化信访网站万网域名查询接口
  • 建网站需要什么人软文案例400字
  • 深圳外发加工网seo网站推广报价
  • 网站建设包含哪些广丰网站seo
  • 过年做哪个网站能致富厦门网络营销推广
  • 重庆网站怎么做出来的seo去哪里学
  • 怎么用自己主机做网站、站长工具的使用seo综合查询运营
  • 做流量网站怎么做电商网站设计
  • 微网站建设报价方案模板宣传网站怎么做
  • 网站书店架构书怎么做网络营销策略分析
  • 家庭宽带做网站服务器广州seo公司排名
  • 阿里云快速备份网站网络工程师培训一般多少钱
  • 检察院门户网站建设seo优化工作内容做什么
  • 温州网站建设推广服务网站流量排名
  • 崇明专业网站建设高质量外链购买
  • 网站营销优化方案购物网站如何推广
  • 简单网站制作成品网址申请注册
  • 筹划建设智慧海洋门户网站网址最新连接查询
  • 培训班在哪个网站找网络营销做得好的产品
  • 专业网站建设公司地址用广州seo推广获精准访问量
  • 信阳企业网站开发参考网是合法网站吗?