• 欢迎访问 winrains 的个人网站!
  • 本网站主要从互联网整理和收集了与Java、网络安全、Linux等技术相关的文章,供学习和研究使用。如有侵权,请留言告知,谢谢!

标签:事务

Spring

Spring 事务失效的场景

Spring 事务失效的场景
前言 文章首发于面试官:你知道哪些事务失效的场景? 声明式事务是Spring功能中最爽之一,可是有些时候,我们在使用声明式事务并未生效,这是为什么呢? 今天陈某带大家来聊一聊声明事务的几种失效场景。本文将会从以下两个方面来说一下事务为什么会失效? @Transactional介绍 @Transactional失效场景 @Transacti……继续阅读 »

winrains 6个月前 (04-30) 92浏览 3个赞

Spring

源码级理解Spring事务

源码级理解Spring事务
Spring有5种隔离级别,7种传播行为。这是面试常问的内容,也是代码中经常碰到的知识点。这些知识枯燥而且乏味,其中有些非常的绕。如果栽在这上面,就实在是太可惜了。 xjjdog在一些事务的基础上,再探讨几个容易淡忘的概念,从源码层面找原因,加深我们的理解,问题大概包括: Spring的事务和数据库的事务隔离是一个概念么? Spring是如何实现事务……继续阅读 »

winrains 6个月前 (04-30) 50浏览 2个赞

未分类

一文讲清楚 MySQL 事务隔离级别和实现原理

一文讲清楚 MySQL 事务隔离级别和实现原理
经常提到数据库的事务,那你知道数据库还有事务隔离的说法吗,事务隔离还有隔离级别,那什么是事务隔离,隔离级别又是什么呢?本文就帮大家梳理一下。 MySQL 事务 本文所说的 MySQL 事务都是指在 InnoDB 引擎下,MyISAM 引擎是不支持事务的。 数据库事务指的是一组数据操作,事务内的操作要么就是全部成功,要么就是全部失败,什么都不做,其实不是没……继续阅读 »

winrains 6个月前 (04-23) 56浏览 2个赞

Spring Boot

Spring Boot 高级篇–事务(5):编程式事务使用姿势介绍篇

Spring Boot 高级篇–事务(5):编程式事务使用姿势介绍篇
前面介绍的几篇事务的博文,主要是利用@Transactional注解的声明式使用姿势,其好处在于使用简单,侵入性低,可辨识性高(一看就知道使用了事务);然而缺点也比较明显,不够灵活,稍不注意,可能就因为姿势不对,导致事务不生效 本文将介绍另外一种事务的使用姿势,借助TransactionTemplate的编程式事务 I. 配置 本篇主要介绍的是jdbcTem……继续阅读 »

winrains 7个月前 (04-13) 96浏览 2个赞

Spring Boot

Spring Boot 高级篇–事务(4):事务不生效的几种case

Spring Boot 高级篇–事务(4):事务不生效的几种case
前面几篇博文介绍了声明式事务@Transactional的使用姿势,只知道正确的使用姿势可能还不够,还得知道什么场景下不生效,避免采坑。本文将主要介绍让事务不生效的几种case I. 配置 本文的case,将使用声明式事务,首先我们创建一个SpringBoot项目,版本为2.2.1.RELEASE,使用mysql作为目标数据库,存储引擎选择Innodb,事务……继续阅读 »

winrains 7个月前 (04-13) 55浏览 3个赞

Spring Boot

Spring Boot 高级篇–事务(3):事务传递属性

Spring Boot 高级篇–事务(3):事务传递属性
对于mysql而言,关于事务的主要知识点可能集中在隔离级别上;在Spring体系中,使用事务的时候,还有一个知识点事务的传递属性同样重要,本文将主要介绍7中传递属性的使用场景 I. 配置 本文的case,将使用声明式事务,首先我们创建一个SpringBoot项目,版本为2.2.1.RELEASE,使用mysql作为目标数据库,存储引擎选择Innodb,事务隔……继续阅读 »

winrains 7个月前 (04-13) 55浏览 3个赞

Spring Boot

Spring Boot 高级篇–事务(2):事务隔离级别知识点小结

Spring Boot 高级篇–事务(2):事务隔离级别知识点小结
上一篇博文介绍了声明式事务@Transactional的简单使用姿势,最文章的最后给出了这个注解的多个属性,本文将着重放在事务隔离级别的知识点上,并通过实例演示不同的事务隔离级别下,脏读、不可重复读、幻读的具体场景 I. 基础知识 在进入正文之前,先介绍一下事务隔离级别的一些基础知识点,详细内容,推荐参考博文 mysql之锁与事务 1. 基本概念 以下基本概……继续阅读 »

winrains 7个月前 (04-13) 58浏览 2个赞

Spring Boot

Spring Boot 高级篇–事务(1):声明式事务Transactional

Spring Boot 高级篇–事务(1):声明式事务Transactional
当我们希望一组操作,要么都成功,要么都失败时,往往会考虑里利用事务来实现这一点;之前介绍的db操作,主要在于单表的CURD,本文将引入声明式事务@Transactional的使用姿势 I. 配置 本篇主要介绍的是jdbcTemplate配合事务注解@Transactional的使用姿势,至于JPA,mybatis在实际的使用区别上,并不大,后面会单独说明 创……继续阅读 »

winrains 7个月前 (04-13) 62浏览 3个赞

Spring Boot

Spring Boot 中的事务是如何实现的

Spring Boot 中的事务是如何实现的
1. 概述 一直在用SpringBoot中的@Transactional来做事务管理,但是很少没想过SpringBoot是如何实现事务管理的,今天从源码入手,看看@Transactional是如何实现事务的,最后我们结合源码的理解,自己动手写一个类似的注解来实现事务管理,帮助我们加深理解。 阅读说明:本文假设你具备Java基础,同时对事务有基本的了解和使……继续阅读 »

winrains 7个月前 (04-05) 65浏览 1个赞

MySQL

MySQL 事务与锁详解

MySQL 事务与锁详解
1 什么是数据库的事务? 1.1 事务的典型场景 比如下单,会操作订单表,资金表,物流表等等,这个时候我们需要让这些操作都在一个事务里面完成。在金融的系统里面事务配置是很常见的,比如行内转账的这种操作,如果我们把它简单地理解为一个账户的余额增加,另一个账户的余额减少的情况(当然实际上要比这复杂),那么这两个动作一定是同时成功或者同时失败的。 1.2 事务的定……继续阅读 »

winrains 7个月前 (03-31) 59浏览 1个赞