乐途乐途
主页
  • 计算机基础

    • TCP/IP
    • Linux
    • HTTP
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C
    • C++
    • Java SE
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • Maven 入门
    • Maven 进阶
    • MyBatis
    • Spring
    • Spring MVC
  • Java

    • Spring Boot
    • Spring Cloud
    • Spring Cloud Alibaba
    • Spring Security
    • Spring AI
    • Spring Batch
    • Kafka
    • Java 设计模式
  • 缓存

    • Redis
  • 搜索引擎

    • Elasticsearch
  • 分布式协调

    • ZooKeeper
联系
阿里云
主页
  • 计算机基础

    • TCP/IP
    • Linux
    • HTTP
  • 数据库

    • SQL
    • MySQL 5.7
  • 编程语言

    • C
    • C++
    • Java SE
    • Python2
    • Python3
  • 数据格式

    • JSON
    • XML
  • 认证与安全

    • JWT
  • 工具

    • Markdown
  • Git

    • GitFlow
  • Quartz

    • Quartz
  • Java

    • Maven 入门
    • Maven 进阶
    • MyBatis
    • Spring
    • Spring MVC
  • Java

    • Spring Boot
    • Spring Cloud
    • Spring Cloud Alibaba
    • Spring Security
    • Spring AI
    • Spring Batch
    • Kafka
    • Java 设计模式
  • 缓存

    • Redis
  • 搜索引擎

    • Elasticsearch
  • 分布式协调

    • ZooKeeper
联系
阿里云
  • 学习路径
  • 第1章 Spring 概述与 IoC 容器

    • 本章定位
    • Spring Framework 概述
    • IoC 与 DI 核心概念
    • @Configuration 详解
    • @Component 详解
    • @ComponentScan 详解
    • @Import 详解
    • @Profile 详解
    • @PropertySource 详解
    • @Service 详解
    • @Repository 详解
  • 第2章 Bean 的定义与依赖注入

    • 本章定位
    • @Bean 详解
    • @Autowired 详解
    • @Qualifier 详解
    • @Primary 详解
    • @Resource 详解
    • @Inject 详解
    • @Named 详解
    • @Value 详解
    • @Scope 详解
    • @Lazy 详解
  • 第3章 Bean 生命周期与作用域

    • 本章定位
    • Bean 生命周期概述
    • @PostConstruct
    • @PreDestroy
    • InitializingBean
    • DisposableBean
    • BeanPostProcessor
    • BeanFactoryPostProcessor
  • 第4章 AOP 面向切面编程

    • 本章定位
    • AOP 核心概念
    • @EnableAspectJAutoProxy
    • @Aspect
    • @Pointcut
    • @Before
    • @After
    • @AfterReturning
    • @AfterThrowing
    • @Around
  • 第5章 数据访问与事务管理

    • 本章定位
    • 数据访问概述
    • @EnableTransactionManagement
    • @Transactional
    • @Transactional 的传播行为
    • @Transactional 的隔离级别
    • @Transactional 的回滚规则
    • @Transactional 的超时与只读属性
    • @TransactionalEventListener
  • 第6章 Spring Boot 自动配置

    • 本章定位
    • @SpringBootApplication 注解
    • @EnableAutoConfiguration 注解
    • @ConfigurationProperties 注解
    • @ConditionalOnClass 注解
    • @ConditionalOnMissingBean 注解
    • @ConditionalOnProperty 注解
  • 第7章 Spring MVC 导引

    • Spring MVC 导引
  • 第8章 扩展阅读

    • 本章定位
    • Spring 事件机制 — ApplicationEvent / ApplicationListener
    • @EventListener
    • SpEL — Spring 表达式语言
    • 校验 Validation — JSR-303 / JSR-380 Bean Validation
    • 类型转换与数据绑定 — Converter / DataBinder
  • 附录

    • Spring Framework 专业术语
    • Spring 核心知识点
    • Spring 面试高频考点
    • Spring 核心注解速查表

"飞翔科技的支付系统出现了脏读:用户A 转账还没完成,用户B 就查到了中间余额。大翔要求白歌给出方案。白歌说:'用 Spring 声明式事务,一行注解解决。'这一章,你将掌握企业级数据访问中最关键的能力——事务控制。"

数据访问与事务管理

本章定位

本章解决的核心问题:在 Spring 管理的数据访问层中,如何通过声明式事务确保数据库操作的 ACID 特性,并精细控制事务的传播、隔离、回滚和超时策略。

学习路线图

学习顺序说明:先建立 Spring 数据访问的整体认知 → 掌握@Transactional核心注解 → 深入四大高级属性:传播行为(方法间事务如何协作)、隔离级别(并发问题防护)、回滚规则(什么异常触发回滚)、超时与只读(性能优化) → 学习事务事件监听 → 最后开启事务管理的总开关。

文件关系说明

文件一句话角色
数据访问概述.md本章背景板,介绍 Spring 数据访问的统一抽象和模板模式。
Transactional.md声明式事务的核心注解,一行代码为方法加上事务边界。
Transactional_传播行为.md事务高级属性之一,解决"方法A 调用方法B 时,事务如何协作"的问题。
Transactional_隔离级别.md事务高级属性之二,解决脏读、不可重复读、幻读等并发问题。
Transactional_回滚规则.md事务高级属性之三,精确控制哪些异常触发回滚、哪些不触发。
Transactional_超时与只读.md事务高级属性之四,优化长事务和只读查询的性能表现。
TransactionalEventListener.md事务事件监听,在事务提交或回滚后触发后续业务逻辑(如发送通知)。
EnableTransactionManagement.md开启 Spring 注解驱动事务管理的总开关,与 AOP 的@EnableAspectJAutoProxy地位对等。

知识图谱

核心逻辑:@Transactional是表象,AOP 代理是底层机制(上一章知识的直接应用);传播行为决定事务边界在方法调用链中如何流动;隔离级别是数据库并发控制的 Spring 抽象;@EnableTransactionManagement开启整个事务基础设施,与@EnableAspectJAutoProxy共同构建声明式事务的运行环境。

与下一章的衔接

本章学完后,你已经掌握了企业级数据访问和事务控制。下一章「Spring Boot 自动配置基础」将解决:如何摆脱繁琐的 XML 和 JavaConfig 配置,让框架根据 classpath 和已有 Bean 自动装配整套基础设施——包括自动配置数据源、事务管理器、以及本章所学的全套事务注解支持。Spring Boot 的"约定大于配置"思想,是对前面所有章节手动配置方式的革命性简化。

下一页
数据访问概述