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

工厂网站建设苹果要做搜索引擎

工厂网站建设,苹果要做搜索引擎,有什么做ppt的网站,推广圈如果你想寻求一份与后端相关的开发工作,那么关于Spring事务相关的面试题你就不能说不会并且不能不知道? 人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步? 一.Spring中声明事务的方式 1.1 编程式事务 编程…

如果你想寻求一份与后端相关的开发工作,那么关于Spring事务相关的面试题你就不能说不会并且不能不知道?

在这里插入图片描述

@人生如棋,我愿为卒,行动虽慢,可谁曾见我后退一步?

一.Spring中声明事务的方式

1.1 编程式事务

编程式事务每次实现都要单独实现,但业务量大功能复杂时,使用编程式事务无疑是痛苦的,而声明式事务不同,声明式事务属于无侵入式,不会影响业务逻辑的实现。

1.2 声明式事务

声明式事务属于无侵入式,不会影响业务逻辑的实现。基于@Transactional注解,事务传播级别基于该注解实现。

二.Spring事务的隔离级别?

2.1 Spring默认事务隔离级别

Spring默认的事务隔离是DEFAULT (默认),其作用的效果就是使用数据库默认的事务隔离级别。
Spring事物的隔离级别比数据库事务隔离级别多一个 Default。

2.2 Spring事务隔离级别分类

  1. DEFAULT (默认)
    这是一个 PlatfromTransactionManager 默认的隔离级别,使用数据库默认的事务隔离级别。另外四个与 MySQL的隔离级别相对应。

  2. READ_UNCOMMITTED (读未提交)

  3. READ_COMMITTED (读已提交)

  4. REPEATABLE_READ (可重复读)

  5. SERIALIZABLE(串行化)

三.讲下嵌套事务?

3.1 嵌套事务的基本定义

嵌套事务:就是事务方法A调用事务方法B,外层调用方法和内层被调用方法都是事务方法的情况。
一般我们不关心外层调用方法的事务传播行为。而只关心内层被调用方法的传播行为。

3.2 嵌套事务的应用场景

  1. 外层调用方法和内层被调用方法,有异常一起回滚,没问题一起提交。(共用一个事务)
  2. 内层被调用方法回滚与否,不会影响外层调用方法。而外层调用方法出异常回滚,也不会回滚内层被调用方法(两个独立的事务)
  3. 内层被调用方法回滚与否,不会影响外层调用方法。而外层调用方法出异常回滚,也会回滚内层被调用方法(嵌套事务)

3.3 每种应用场景下对应的事务传播行为

  1. @Transactional(propagation=Propagation.REQUIRED) :内外层方法共用外层方法的事务。

  2. @Transactional(propagation=Propagation.REQUIRES_NEW) :当执行内层被调用方法时,外层方法的事务会挂起。两个事务相互独立,不会相互影响。

  3. @Transactional(propagation=Propagation.NESTED) :外事务回滚,内事务也会回滚。

四.Spring事务传播行为有哪些呢?

4.1 基本概念

事务的传播行为(propagation)就是为了解决外层方法调用内层事务方法的各个情况的。

4.2 Spring默认隔离级别

Spring事务的传播级别默认是Propagation.REQUIRED级别。

4.3 Spring事务隔离级别分类

接下来我们就来看看Spring事务传播级别:

  1. Propagation.REQUIRED:支持当前事务,如果没有事务会创建一个新的事务
  2. Propagation.SUPPORTS:支持当前事务,如果没有事务的话以非事务方式执行
  3. Propagation.MANDATORY:支持当前事务,如果没有事务抛出异常
  4. Propagation.REQUIRES_NEW:创建一个新的事务并挂起当前事务
  5. Propagation.NOT_SUPPORTED:以非事务方式执行,如果当前存在事务则将当前事务挂起
  6. Propagation.NEVER:以非事务方式进行,如果存在事务则抛出异常
  7. Propagation.NESTED:如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则进行与PROPAGATION_REQUIRED类似的操作

4.4 Propagation.NESTED 与 Propagation.REQUIRES_NEW 的区别:

Propagation.NESTED 与 Propagation.REQUIRES_NEW 非常类似,都像一个嵌套事务,如果不存在一个活动的事务,都会开启一个新的事务。

  1. 使用Propagation.REQUIRES_NEW 时,内层事务与外层事务就像两个独立的事务一样,一旦内层事务进行了提交后,外层事务不能对其进行回滚。两个事务互不影响。两个事务不是一个真正的嵌套事务。同时它需要 JTA 事务管理器的支持。

  2. 使用Propagation.NESTED 时,外层事务的回滚可以引起内层事务的回滚。而内层事务的异常并不会导致外层事务的回滚,它是一个真正的嵌套事务。

五.勉励

屏幕前的小伙伴,我想对你们说,也想对自己说,让我们抛弃忧虑,相信自己,慢一点,不要让自己过于功利,太急于求成,但行好事,莫问前程,你一定可以的,比心,我们一起加油!

下期见!

http://www.hkea.cn/news/200538/

相关文章:

  • 刚做的网站怎么搜索不出来百度seo收录软件
  • 视频拍摄app站长工具seo综合查询广告
  • 新闻单位建设网站的意义武汉seo推广优化
  • 低价网站公司软文怎么写
  • 东莞市建设公共交易中心网站百度官网首页
  • 如何建立的网站能争钱优化营商环境 助推高质量发展
  • 做百度网站营销型网站建设排名
  • 网站域名被黑国际新闻最新消息战争
  • 苏州网站开发公司济南兴田德润厉害吗网络自动推广软件
  • 广药网站建设试卷株洲最新今日头条
  • 网站建设管理考核办法微信推广平台怎么做
  • 网站新闻模块代码网络推广有哪些常见的推广方法
  • 合肥大型网站如何推广普通话
  • 高端网站制作软件怎么样推广自己的店铺和产品
  • 无障碍浏览网站怎么做关键词seo排名优化推荐
  • wordpress 247seo推广系统
  • 做深圳门户网站起什么名字好泰州seo外包公司
  • 网站视频上传怎么做百度站长平台论坛
  • wordpress农业模板下载小时seo
  • 做网站语言排名2018发帖推广哪个平台好
  • 销氪crmseo入门讲解
  • 蒙阴哪有做淘宝网站的钓鱼网站制作教程
  • 网站如何做导航条下拉菜单怎么做百度网页
  • 网站开发都做什么平台推广精准客源
  • 网站建设共享ip宁波seo搜索引擎优化
  • 学校网站建设必要性搜索引擎排名
  • 哪里有做区块链网站的百度网址大全在哪里找
  • 加盟平台网站怎么做竞价托管多少钱一个月
  • wordpress 微信 代码网站关键词怎么优化排名
  • 网站推广维护考研培训班哪个机构比较好