创建基础业务模块
本篇介绍如何在 forge-business 下新建业务模块,包括依赖配置和包结构创建。
新建模块
1. 创建 Maven 模块
在 forge-business/ 下新建模块目录:
forge-business/
└── forge-business-order/
├── pom.xml
└── src/main/java/com/mdframe/forge/business/order/
├── controller/
├── service/
│ └── impl/
├── mapper/
├── entity/
├── dto/
├── vo/
├── constant/
└── listener/2. pom.xml 配置
xml
<dependencies>
<!-- ORM(MyBatis-Plus + 动态数据源) -->
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-starter-orm</artifactId>
</dependency>
<!-- Web 层(全局异常处理 + RespInfo) -->
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-starter-web</artifactId>
</dependency>
<!-- 认证授权(Sa-Token + @SaCheckPermission) -->
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-starter-auth</artifactId>
</dependency>
<!-- Excel 导入导出(按需) -->
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-starter-excel</artifactId>
</dependency>
<!-- 操作日志(按需) -->
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-starter-log</artifactId>
</dependency>
</dependencies>3. 包结构
| 包 | 职责 |
|---|---|
controller/ | REST 控制器 |
service/ | 服务接口 |
service/impl/ | 服务实现 |
mapper/ | MyBatis Mapper 接口 |
entity/ | 数据库实体 |
dto/ | 请求参数对象 |
vo/ | 响应数据对象 |
constant/ | 常量定义 |
listener/ | 事件监听器 |
4. 注册模块
在 forge-admin-server 的 pom.xml 中引入新模块:
xml
<dependency>
<groupId>com.mdframe.forge</groupId>
<artifactId>forge-business-order</artifactId>
<version>${project.version}</version>
</dependency>Mapper XML 扫描
确保 Mapper XML 路径在 application.yml 中被扫描:
yaml
mybatis-plus:
mapper-locations:
- classpath*:com/mdframe/forge/**/mapper/**/*.xml依赖选择指南
| 需求 | 引入的 starter |
|---|---|
| 数据库操作 | forge-starter-orm |
| Web 接口 | forge-starter-web |
| 权限控制 | forge-starter-auth |
| Redis 缓存 | forge-starter-cache |
| 文件上传 | forge-starter-file |
| API 加密 | forge-starter-crypto |
| Excel 处理 | forge-starter-excel |
| 操作日志 | forge-starter-log |
| 幂等控制 | forge-starter-idempotent |
验证
bash
# 编译验证
cd forge-server && mvn clean compile
# 启动验证
cd forge-admin-server && mvn spring-boot:run启动后访问 http://localhost:8580,确认无报错。
