代码拆分
项目原结构如下图:

拆分后结构如图:

在idea中打开项目,
选中项目右键选择

创建两个maven项目,起名model-code,model-web。
把原项目的entity,mapper,vo,resources下面的myBatis的文件放到model-code项目下,结构如图:

原来项目剩下的文件都可以放到model-web项目下。

修改model-code项目的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>
<!-- 最外层的pom.xml的信息 -->
<artifactId>model</artifactId>
<groupId>com.rocket</groupId>
<version>0.0.1-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<!-- 自己的项目配置 -->
<groupId>com.rocket</groupId>
<artifactId>model-code</artifactId>
<version>0.0.1</version>
<name>model-code</name>
<!-- 打jar -->
<packaging>jar</packaging>
<properties>
<java.version>1.8</java.version>
</properties>
<!-- 引用的依赖 -->
<dependencies>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<!-- mysql -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.8</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.11</version>
</dependency>
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<version>2.0.3.RELEASE</version>
</dependency>
</dependencies>
</project>
修改model-web项目的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> <!-- 最外层的pom.xml的信息 --> <artifactId>model</artifactId> <groupId>com.rocket</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <!-- 自己的项目配置 --> <groupId>com.rocket</groupId> <artifactId>model-web</artifactId> <version>0.0.1</version> <name>model-web</name> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--web启动器依赖--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- mode-code项目依赖 --> <dependency> <groupId>com.rocket</groupId> <artifactId>model-code</artifactId> <version>0.0.1</version> </dependency> </dependencies> <!-- 使用spring-boot-maven-plugin进行插件打包 --> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
修改model项目的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 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <packaging>pom</packaging> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent> <!-- 包含的两个项目 --> <modules> <module>model-code</module> <module>model-web</module> </modules> <!-- 项目信息 --> <groupId>com.rocket</groupId> <artifactId>model</artifactId> <version>0.0.1-SNAPSHOT</version> <name>model</name> <description>Demo project for Spring Boot</description> <properties> <java.version>1.8</java.version> </properties> </project>
启动项目,就可以正常访问。


项目启动的时候会自动,把model-code项目打包,更新code项目的实体,重新启动也会生效。
上面两个如果不生效应该就是拆分不规范。

浙公网安备 33010602011771号