iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >Spring的@Transactional怎么使用
  • 894
分享到

Spring的@Transactional怎么使用

2023-06-30 18:06:14 894人浏览 薄情痞子
摘要

本篇内容介绍了“spring的@Transactional怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、原理事务的概念想必大家都

本篇内容介绍了“spring的@Transactional怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

1、原理

事务的概念想必大家都很清楚,其ACID特性在开发过程中占有重要的地位。同时在并发过程中会出现一些一致性问题,为了解决一致性问题,也出现了四种隔离级别,这里就不再详述了,感兴趣的可以去查一下。

Spring中的事务有两种:

  • 编程式事务

  • 声明式事务

通常情况下我们使用声明式事务,它是基于Springaop实现的。基于AOP实现的事务极大得帮助了我们的开发效率,其本质是对方法进行前后拦截,在目标方法前加入一个事务,在目标完成后再加入一个事务进行提交或者回滚,这种方式下我们并不需要在目标方法中的代码中掺杂事务管理代码,轻松进行事务管理。

而编程式事务就需要我们修改代码来进行事务管理。这种方法看似很麻烦,但是它的存在自有它的道理,上面我们讲到的声明式事务控制,其控制的细粒度只能作用到方法上,无法在代码块中实现声明式事务控制。我们都知道,一旦加上事务,程序的运行效率就会降低,所以编程式事务也有它的用武之地。

但是我们的广大劳动人民也是智慧的。直接将需要事务的代码块独立成方法,这样仍然可以使用声明式事务。当然在开发中具体情况要具体分析了。

2、用法

事务的传播行为: 

Spring的@Transactional怎么使用

 事务的隔离级别

Spring的@Transactional怎么使用

@Transactional属性

Spring的@Transactional怎么使用

 示例代码:

@Service@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class)public class RoleServiceImpl implements RoleService {    @Autowired    private RoleDao roleDao;    @Transactional(propagation = Propagation.SUPPORTS,readOnly = true)    @Override    public List<Role> findAllRoles() {        return roleDao.selectAllRoles();    }}

3、拓展

1、为什么声明式事务只能应用于方法上?

  • 因为声明式事务是基于AOP实现的,AOP是基于动态代理实现的。

  • 动态代理只会捕捉来自外部的方法调用,

  • 意思就是类内部的方法调用类内部的另外方法,并不会发生事务行为。

“Spring的@Transactional怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: Spring的@Transactional怎么使用

本文链接: https://www.lsjlt.com/news/330830.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Spring的@Transactional怎么使用
    本篇内容介绍了“Spring的@Transactional怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1、原理事务的概念想必大家都...
    99+
    2023-06-30
  • Spring中@Transactional属性怎么使用
    本篇内容介绍了“Spring中@Transactional属性怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!序言今天我在写代码的时候...
    99+
    2023-06-22
  • Spring中Transactional注解使用的心得(推荐)
    事务特性 @Transactional注解是用于事务控制的,需要知道事务的ACID特征:即原子性(Atomicity,或称不可分割性)、一致性(Consistency)、隔离性(Is...
    99+
    2022-11-13
    Spring Transactional注解 Spring Transactional使用
  • 如何在Spring中使用@Transactional注解
    这期内容当中小编将会给大家带来有关如何在Spring中使用@Transactional注解,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。@Transactionalservice A(){try...
    99+
    2023-06-15
  • spring 中事务注解@Transactional与trycatch的使用
    spring事务注解@Transactional与trycatch 在项目中 @service层中 我们会经常在做一些增删改操作的方法上看到 spring 的事务注解 @transa...
    99+
    2024-04-02
  • spring的@Transactional注解用法解读
    概述事务管理对于企业应用来说是至关重要的,即使出现异常情况,它也可以保证数据的一致性。Spring Framework对事务管理提供了一致的抽象,其特点如下:为不同的事务API提供一致的编程模型,比如JTA(Java Transaction...
    99+
    2023-05-30
  • 详解Spring中的Transactional属性
    目录一、Transactional二、使用说明三、注解失效问题一、Transactional 声明式事务管理建立在AOP之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创...
    99+
    2024-04-02
  • 怎么在Spring中利用@Transactional实现事务回滚
    今天就跟大家聊聊有关怎么在Spring中利用@Transactional实现事务回滚,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、使用场景举例在了解@Transactional怎...
    99+
    2023-05-30
    spring transactional
  • Spring中的@Transactional的工作原理
    目录1、原理2、用法3、拓展1、原理 事务的概念想必大家都很清楚,其ACID特性在开发过程中占有重要的地位。同时在并发过程中会出现一些一致性问题,为了解决一致性问题,也出现了四种隔离...
    99+
    2024-04-02
  • 聊聊spring @Transactional 事务无法使用的可能原因
    spring transaction 建议 Spring团队的建议是你在具体的类(或类的方法)上使用 @Transactional 注解, 而不要使用在类所要实现的任何接口上。你当然...
    99+
    2024-04-02
  • @Transactional注解怎么用
    本篇内容主要讲解“@Transactional注解怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“@Transactional注解怎么用”吧!@Transactional注解:多事务嵌套,独...
    99+
    2023-06-29
  • Spring中Transactional属性的示例分析
    小编给大家分享一下Spring中Transactional属性的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、Transactional声明式事务管理...
    99+
    2023-06-15
  • Spring中@Transactional(rollbackFor=Exception.class)属性用法介绍
    序言 今天我在写代码的时候,看到了。一个注解@Transactional(rollbackFor = Exception.class),今天就和大家分享一下,这个注解的用法; 异常...
    99+
    2024-04-02
  • spring中12种@Transactional的失效场景(小结)
    目录一、失效场景集一:代理不生效二、失效场景集二:框架或底层不支持的功能三、失效场景集三:错误使用@Transactional四、总结数据库事务是后端开发中不可缺少的一块知识点。Sp...
    99+
    2024-04-02
  • Java@Transactional与synchronized使用的问题
    目录引言发现问题问题原因解决问题大致思路@Transactional事务不生效问题总结引言 @Transactional是spring通过aop让我们轻松实现事务控制的一个注解;而s...
    99+
    2023-01-30
    Java @Transactional Java synchronized
  • Spring @Transactional事务失效的原因分析
    目录前言1.非 public 修饰的方法2.timeout 超时3.代码中有 try/catch4.调用类内部 @Transactional 方法5.数据库不支持事务总结前言 一个程...
    99+
    2024-04-02
  • spring中@Transactional的失效场景有哪些
    小编给大家分享一下spring中@Transactional的失效场景有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、失效场景集一:代理不生效Spring...
    99+
    2023-06-22
  • 怎么使用@Transactional设置嵌套事务不回滚
    本篇内容介绍了“怎么使用@Transactional设置嵌套事务不回滚”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!@Transaction...
    99+
    2023-06-20
  • Spring的注解怎么使用
    这篇“Spring的注解怎么使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Spring的注解怎么使用”文章吧。非全注解开...
    99+
    2023-06-29
  • Spring中的Bean怎么使用
    本文小编为大家详细介绍“Spring中的Bean怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Spring中的Bean怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。从广义上 Spring 注解可...
    99+
    2023-07-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作