一、SpringBoot多模块介绍
Spring Boot是一个用于快速开发基于Spring框架的应用程序的工具。多模块开发是指将一个大型应用程序拆分为多个模块(或子项目),每个模块负责不同的功能或业务逻辑。在Spring Boot中,多模块开发可以帮助我们更好地组织代码、提高代码的可维护性和可扩展性。
在Spring Boot中,可以使用Maven或Gradle等构建工具来创建多模块项目。每个模块可以包含自己的源代码、配置文件和依赖项,同时也可以有自己的打包方式和部署方式。在多模块开发中,通常会有一个父模块(或者称为根模块),用于管理所有子模块之间的依赖关系和版本控制。
通过多模块开发,我们可以将不同功能的代码分离到不同的模块中,使得代码更加清晰和易于管理。同时,每个模块可以独立进行测试、构建和部署,有利于团队协作和项目的持续集成与部署。
总的来说,Spring Boot多模块开发可以帮助我们更好地组织和管理代码,提高开发效率和代码质量,是一个非常实用的开发方式。
二、搭建多模块
我们按照功能搭建多模块
1. 我们先建立父模块
这里我们什么都不用选直接点击create
2、创建子模块
父项目名称->右键->new->moudle
依次创建provide1、provide2、common、server,一样不用选如何依赖
将common、provide1、provide2的启动类和框出来的这些都删除
在父模块的pom里面声明子模块
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.example</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</name><description>demo</description><properties><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><spring-boot.version>2.6.13</spring-boot.version></properties><!---父模块的打包方式--><packaging>pom</packaging><!--将子模块放在一堆--><modules><module>provide1</module><module>provide2</module><module>server</module><module>common</module></modules><dependencyManagement><dependencies><dependency><groupId>com.example</groupId><artifactId>common</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>com.example</groupId><artifactId>server</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>com.example</groupId><artifactId>provide1</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>com.example</groupId><artifactId>provide2</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement></project>
在每一个子模块的pom文件进行修改
- common模块里面放入通用的依赖
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>demo</artifactId><groupId>com.example</groupId><version>0.0.1-SNAPSHOT</version></parent><artifactId>common</artifactId><description>通用模块</description><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies></project>
- server模块
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>demo</artifactId><groupId>com.example</groupId><version>0.0.1-SNAPSHOT</version></parent><artifactId>server</artifactId><description>启动模块</description><dependencies><dependency><groupId>com.example</groupId><artifactId>provide1</artifactId></dependency><dependency><groupId>com.example</groupId><artifactId>provide2</artifactId></dependency></dependencies></project>
- provide1模块
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>demo</artifactId><groupId>com.example</groupId><version>0.0.1-SNAPSHOT</version></parent><artifactId>provide1</artifactId><description>provide1模块</description><dependencies><dependency><groupId>com.example</groupId><artifactId>common</artifactId><version>0.0.1-SNAPSHOT</version></dependency></dependencies></project>
- provide2模块
<?xml version="1.0" encoding="UTF-8"?><projectxmlns="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 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><artifactId>demo</artifactId><groupId>com.example</groupId><version>0.0.1-SNAPSHOT</version></parent><artifactId>provide2</artifactId><description>provide2模块</description><dependencies><dependency><groupId>com.example</groupId><artifactId>common</artifactId><version>0.0.1-SNAPSHOT</version></dependency></dependencies></project>
在provide1里面创建一个resource再创建一个application.yml写一个端口号
server:port:8081
这样模块就搭建成功了
版权归原作者 长生平安 所有, 如有侵权,请联系我们删除。