- 🎥 个人主页:Dikz12
- 🔥个人专栏:Spring学习之路
- 📕格言:吾愚多不敏,而愿加学
- 欢迎大家👍点赞✍评论⭐收藏
目录
1. 父子工程创建
1.1 创建父工程
1.2 创建子项目
重点关注Spring Cloud 主键的学习,而不是业务本身实现.
1. 父子工程创建
1.1 创建父工程
1.创建⼀个空的Maven项⽬,删除所有代码,只保留pom.xml
目录结构:
2. 完善pom.xml文件
把下面配置复制到pom文件中.
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>3.1.6</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<properties>
<maven.compiler.source>17</maven.compiler.source>
<maven.compiler.target>17</maven.compiler.target>
<java.version>17</java.version>
<mybatis.version>3.0.3</mybatis.version>
<mysql.version>8.0.33</mysql.version>
<spring-cloud.version>2022.0.3</spring-cloud.version>
</properties>
<dependencies>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<optional>true</optional>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>${spring-cloud.version}</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis.version}</version>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>${mysql.version}</version>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter-test</artifactId>
<version>${mybatis.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
</dependencyManagement>
DependencyManagement 和 Dependencies的区别:
- dependencies :将所依赖的jar直接加到项⽬中. ⼦项⽬也会继承该依赖.
- dependencyManagement :只是声明依赖,并不实现Jar包引⼊.如果⼦项⽬需要⽤到相关依赖, 需要显式声明.如果⼦项⽬没有指定具体版本,会从⽗项⽬中读取version.如果⼦项⽬中指定了版本号,就会使⽤⼦项⽬中指定的jar版本.此外⽗⼯程的打包⽅式应该是pom,不是jar,这⾥需要⼿动使⽤ packaging 来声明.
Spring Cloud版本
Spring Cloud 是基于SpringBoot搭建的,所以Spring Cloud 版本与SpringBoot版本有关.
1.2 创建子项目
子项目 - 订单服务 :
根据上面流程在创建子项目 - 商品服务
创建好之后,就可以在spring-cloud-demo中的pom文件看到多了一个<modules>,说明创建成功了.