RuoYi-Cloud 添加跨模块事务的步骤 详细到指令的操作
时间: 2024-04-09 22:33:40 浏览: 106
要在 RuoYi-Cloud 中添加跨模块事务,可以按照以下步骤进行操作:
1. 在你的项目中,首先确保已经引入了 `ruoyi-common` 和 `ruoyi-generator` 这两个模块。
2. 在 `ruoyi-common` 模块的 `pom.xml` 文件中,添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jta-atomikos</artifactId>
</dependency>
```
3. 在 `ruoyi-generator` 模块的 `pom.xml` 文件中,添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jta-atomikos</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid-spring-boot-starter</artifactId>
<version>1.1.10</version>
</dependency>
```
4. 在 `ruoyi-generator` 模块的 `application.yml` 文件中,配置 Atomikos 的数据源和事务管理器:
```yaml
spring:
jta:
atomikos:
datasource:
xa-data-source-class-name: com.alibaba.druid.pool.xa.DruidXADataSource
unique-resource-name: dataSource
xa-properties:
url: jdbc:mysql://localhost:3306/your_database?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=UTC
username: your_username
password: your_password
transaction-manager-id: jtaTransactionManager
```
5. 在 `ruoyi-generator` 模块的 `generator.properties` 文件中,配置生成代码的参数,确保生成的代码开启 JPA 注解和事务注解:
```
# 开启 JPA 注解
gen.jpaAnnotation=true
# 开启事务注解
gen.transactionAnnotation=true
```
6. 运行 `ruoyi-generator` 模块下的 `GeneratorApplication.java` 文件,生成代码。
通过以上步骤,你就可以在 RuoYi-Cloud 中添加跨模块事务了。请注意,这只是一个大致的操作流程,具体的细节可能会根据你的实际项目需求而有所不同。如果有任何问题,请随时向我提问。
阅读全文