From 3b2df2be357146bed717373f2e80b7cd112efcfe Mon Sep 17 00:00:00 2001 From: many2many <6168830@qq.com> Date: Fri, 22 Nov 2024 10:20:53 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8E=BB=E6=8E=896=E7=AB=A0=E4=B8=AD=E4=BA=8B?= =?UTF-8?q?=E5=8A=A1=E7=AE=A1=E7=90=86=E9=83=A8=E5=88=86=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 6 +--- docs/chapter06.md | 75 ----------------------------------------------- docs/index.md | 6 ---- 3 files changed, 1 insertion(+), 86 deletions(-) diff --git a/README.md b/README.md index 91be827..5ea2d4d 100644 --- a/README.md +++ b/README.md @@ -171,11 +171,7 @@ #### 6.4.1 ORM基本概念 #### 6.4.2 常见ORM框架介绍 #### 6.4.3 JPA (掌握) -### 6.5 事务管理(掌握) -#### 6.5.1 事务管理的基本概念 -#### 6.5.2 Spring事务管理器 -#### 6.5.3 使用@Transactional进行声明式事务管理 -#### 6.5.4 使用编程式事务管理 + ## 7. [项目实践](./docs/chapter07.md) #### 7.1 项目准备 diff --git a/docs/chapter06.md b/docs/chapter06.md index d20022e..9f1a175 100644 --- a/docs/chapter06.md +++ b/docs/chapter06.md @@ -305,79 +305,4 @@ spring: format_sql: true # 保持原样,用于格式化SQL输出 ``` -### 6.5 事务管理(掌握) - -#### 6.5.1 事务管理的基本概念 - -在计算机科学中,特别是在数据库管理和分布式计算领域,事务(Transaction)是一种基本的操作单位,它确保了一系列操作要么全部成功,要么全部失败。事务的概念是数据库管理系统(DBMS)中用来保证数据完整性和一致性的重要机制之一。 - -事务具有以下几个核心特点,通常称为ACID属性 - -- **原子性 (Atomicity)**: 事务中的所有操作要么全部完成,要么一个也不完成。 -- **一致性 (Consistency)**: 事务的执行不会破坏数据的一致性。 -- **隔离性 (Isolation)**: 事务之间是隔离的,不会相互影响。 -- **持久性 (Durability)**: 一旦事务提交,它的效果是持久的。 - -#### 6.5.2 Spring事务管理器 -- **定义**: Spring提供了多种事务管理器,如`DataSourceTransactionManager`。 -- **示例**: - ```java - @Configuration - @EnableTransactionManagement - public class AppConfig { - @Bean - public PlatformTransactionManager transactionManager(DataSource dataSource) { - return new DataSourceTransactionManager(dataSource); - } - } - ``` - -#### 6.5.3 使用@Transactional进行声明式事务管理 -- **定义**: 使用@Transactional注解来声明式地管理事务,简化了事务控制代码。 -- **示例**: - ```java - @Service - @Transactional - public class UserService { - private final UserRepository userRepository; - - @Autowired - public UserService(UserRepository userRepository) { - this.userRepository = userRepository; - } - - public void createUser(User user) { - userRepository.save(user); - } - } - ``` - -#### 6.5.4 使用编程式事务管理 -- **定义**: 通过编程的方式显式地管理事务,适用于需要更细粒度控制事务的情况。 -- **示例**: - ```java - @Service - public class UserService { - private final UserRepository userRepository; - private final PlatformTransactionManager transactionManager; - - @Autowired - public UserService(UserRepository userRepository, PlatformTransactionManager transactionManager) { - this.userRepository = userRepository; - this.transactionManager = transactionManager; - } - - public void createUser(User user) { - TransactionDefinition def = new DefaultTransactionDefinition(); - TransactionStatus status = transactionManager.getTransaction(def); - try { - userRepository.save(user); - transactionManager.commit(status); - } catch (Exception e) { - transactionManager.rollback(status); - throw e; - } - } - } - ``` diff --git a/docs/index.md b/docs/index.md index 753f47b..6d335f4 100644 --- a/docs/index.md +++ b/docs/index.md @@ -170,12 +170,6 @@ #### 6.4.1 ORM基本概念 #### 6.4.2 常见ORM框架介绍 #### 6.4.3 JPA (掌握) -### 6.5 事务管理(掌握) -#### 6.5.1 事务管理的基本概念 -#### 6.5.2 Spring事务管理器 -#### 6.5.3 使用@Transactional进行声明式事务管理 -#### 6.5.4 使用编程式事务管理 - ## 7. [项目实践](./chapter07.md) ### 7.1 项目准备