feat(项目结构): 重构项目模块并添加新功能

-重命名 c_portal 模块为 chaos_api_common
- 新增 chaos_api_domain、chaos_api_interface、chaos_api_service、chaos_api_data、chaos_api_web 和 chaos_api_websocket 模块
- 更新项目依赖,包括 Spring Boot、MyBatis-Plus 和 MySQL连接器
- 移除旧的 PortalApplication 类,创建新的 ChaosApiWebApplication 类作为项目入口
This commit is contained in:
chaos
2025-07-15 11:17:53 +08:00
parent 7909cbe135
commit 1810632e60
10 changed files with 343 additions and 26 deletions

View File

@@ -1,11 +0,0 @@
package cn.nopj.chaos.portal;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication(scanBasePackages = "cn.nopj.chaos")
public class PortalApplication {
public static void main(String[] args) {
SpringApplication.run(PortalApplication.class,args);
}
}

23
chaos_api_common/pom.xml Normal file
View File

@@ -0,0 +1,23 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_common</artifactId>
<packaging>jar</packaging>
<name>chaos_api_common</name>
<description>Common utilities and configurations</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
</project>

44
chaos_api_data/pom.xml Normal file
View File

@@ -0,0 +1,44 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_data</artifactId>
<packaging>jar</packaging>
<name>chaos_api_data</name>
<description>Data access layer (Repository, Mapper)</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_domain</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
</dependency>
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
</dependency>
</dependencies>
</project>

28
chaos_api_domain/pom.xml Normal file
View File

@@ -0,0 +1,28 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_domain</artifactId>
<packaging>jar</packaging>
<name>chaos_api_domain</name>
<description>Domain models and entities</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
</dependency>
</dependencies>
</project>

View File

@@ -9,7 +9,23 @@
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
</parent> </parent>
<artifactId>c_portal</artifactId> <artifactId>chaos_api_interface</artifactId>
<packaging>jar</packaging>
<name>chaos_api_interface</name>
<description>Service interfaces and DTOs</description>
<dependencies>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_domain</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
<properties> <properties>
<maven.compiler.source>21</maven.compiler.source> <maven.compiler.source>21</maven.compiler.source>
@@ -17,17 +33,4 @@
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties> </properties>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-autoconfigure -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId>
</dependency>
</dependencies>
</project> </project>

41
chaos_api_service/pom.xml Normal file
View File

@@ -0,0 +1,41 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_service</artifactId>
<packaging>jar</packaging>
<name>chaos_api_service</name>
<description>Core business logic and service implementations</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_interface</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_data</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_common</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>

77
chaos_api_web/pom.xml Normal file
View File

@@ -0,0 +1,77 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_web</artifactId>
<packaging>jar</packaging>
<name>chaos_api_web</name>
<description>Web layer (Controllers, main application)</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_interface</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_service</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>

View File

@@ -0,0 +1,11 @@
package cn.nopj.chaos_api;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication(scanBasePackages = "cn.nopj.chaos_api")
public class ChaosApiWebApplication {
public static void main(String[] args) {
SpringApplication.run(ChaosApiWebApplication.class, args);
}
}

View File

@@ -0,0 +1,46 @@
<?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">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<artifactId>chaos_api_websocket</artifactId>
<packaging>jar</packaging>
<name>chaos_api_websocket</name>
<description>WebSocket services</description>
<properties>
<maven.compiler.source>21</maven.compiler.source>
<maven.compiler.target>21</maven.compiler.target>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_interface</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_service</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>cn.nopj</groupId>
<artifactId>chaos_api_common</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
</dependency>
</dependencies>
</project>

57
pom.xml
View File

@@ -9,7 +9,14 @@
<version>1.0-SNAPSHOT</version> <version>1.0-SNAPSHOT</version>
<packaging>pom</packaging> <packaging>pom</packaging>
<modules> <modules>
<module>c_portal</module>
<module>chaos_api_common</module>
<module>chaos_api_domain</module>
<module>chaos_api_interface</module>
<module>chaos_api_service</module>
<module>chaos_api_data</module>
<module>chaos_api_web</module>
<module>chaos_api_websocket</module>
</modules> </modules>
<properties> <properties>
@@ -26,12 +33,60 @@
<artifactId>spring-boot-starter-web</artifactId> <artifactId>spring-boot-starter-web</artifactId>
<version>3.5.3</version> <version>3.5.3</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-security -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
<version>3.5.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-autoconfigure --> <!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-autoconfigure -->
<dependency> <dependency>
<groupId>org.springframework.boot</groupId> <groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-autoconfigure</artifactId> <artifactId>spring-boot-autoconfigure</artifactId>
<version>3.5.3</version> <version>3.5.3</version>
</dependency> </dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-data-redis -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
<version>3.5.3</version>
</dependency>
<!-- &lt;!&ndash; https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-logging &ndash;&gt;-->
<!-- <dependency>-->
<!-- <groupId>org.springframework.boot</groupId>-->
<!-- <artifactId>spring-boot-starter-logging</artifactId>-->
<!-- <version>3.5.3</version>-->
<!-- </dependency>-->
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-log4j2</artifactId>
<version>3.5.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-websocket -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-websocket</artifactId>
<version>3.5.3</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-spring-boot3-starter -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-spring-boot3-starter</artifactId>
<version>3.5.12</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.mysql/mysql-connector-j -->
<dependency>
<groupId>com.mysql</groupId>
<artifactId>mysql-connector-j</artifactId>
<version>9.3.0</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus -->
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus</artifactId>
<version>3.5.12</version>
</dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
</project> </project>