框架的搭建
-
- 1.搭建 seata-examples 项目
-
- 1.1 使用 IDEA 创建 Maven 项目
- 1.2 添加依赖
- 1.3 完整的 pom.xml
- 2.搭建 account-service 项目
-
- 2.1 使用 IDEA 创建一个 Maven 项目
- 2.2 添加依赖
- 2.3 完整的 pom.xml 文件如下
- 3.搭建 business-service 项目
-
- 3.1 使用 IDEA 创建一个 Maven 项目
- 3.2 添加依赖
- 3.3 完整的 pom.xml 文件如下
- 4.搭建 order-service 项目
-
- 4.1 使用 IDEA 创建一个 Maven 项目
- 4.2 添加依赖
- 4.3 完整的 pom.xml
- 5.搭建 storage-service 项目
-
- 5.1 使用 IDEA 创建一个 Maven 项目
- 5.2 添加依赖
- 5.3 完整的 pom.xml 文件如下
- 6.完整的项目的案例为
在本示例中,我们模拟了一个用户购买货物的场景:
- StorageService 负责扣减库存数量;
- OrderService 负责保存订单;
- AccountService 负责扣减用户账户余额;
- Business 负责用户下单的整个流程处理;
1.搭建 seata-examples 项目
- seata-examples 用来控制所有项目的依赖版本号,以及去除公共的依赖 seata。
1.1 使用 IDEA 创建 Maven 项目
- 选择 Maven 项目:
- 点击 Next,添加以下的信息:
- Parent:选择 spring-cloud-alibaba-examples
- Name:seata-examples
- 其他的信息保持默认即可。然后点击 Finish 即可完成创建
1.2 添加依赖
- 打开项目的 pom.xml 文件,添加以下的依赖。
<dependencies>
<!-- 服务注册-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- seata-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-seata</artifactId>
</dependency>
<!-- web 项目的基础依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
1.3 完整的 pom.xml
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>spring-cloud-alibaba-examples</artifactId>
<groupId>com.dqcgm</groupId>
<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>seata-examples</artifactId>
<dependencies>
<!-- 服务注册-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-alibaba-nacos-discovery</artifactId>
</dependency>
<!-- seata-->
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sea