去掉6章中事务管理部分。

This commit is contained in:
many2many 2024-11-22 10:20:53 +08:00
parent 2832dd7d41
commit 3b2df2be35
3 changed files with 1 additions and 86 deletions

View File

@ -171,11 +171,7 @@
#### 6.4.1 ORM基本概念 #### 6.4.1 ORM基本概念
#### 6.4.2 常见ORM框架介绍 #### 6.4.2 常见ORM框架介绍
#### 6.4.3 JPA (掌握) #### 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. [项目实践](./docs/chapter07.md)
#### 7.1 项目准备 #### 7.1 项目准备

View File

@ -305,79 +305,4 @@ spring:
format_sql: true # 保持原样用于格式化SQL输出 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;
}
}
}
```

View File

@ -170,12 +170,6 @@
#### 6.4.1 ORM基本概念 #### 6.4.1 ORM基本概念
#### 6.4.2 常见ORM框架介绍 #### 6.4.2 常见ORM框架介绍
#### 6.4.3 JPA (掌握) #### 6.4.3 JPA (掌握)
### 6.5 事务管理(掌握)
#### 6.5.1 事务管理的基本概念
#### 6.5.2 Spring事务管理器
#### 6.5.3 使用@Transactional进行声明式事务管理
#### 6.5.4 使用编程式事务管理
## 7. [项目实践](./chapter07.md) ## 7. [项目实践](./chapter07.md)
### 7.1 项目准备 ### 7.1 项目准备