# base-platform
**Repository Path**: ExtremeP/base-platform
## Basic Information
- **Project Name**: base-platform
- **Description**: Java 通用业务基座
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-01-07
- **Last Updated**: 2026-01-08
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# base-platform
Java 通用业务基座(Base Platform),用于快速支撑政务 / 企业级系统的通用能力建设。
## 项目定位
base-platform 是一个模块化、低耦合的 Java 通用能力基座,以 Spring Boot Starter 形式提供,通过自动配置(AutoConfiguration)接入,不强依赖业务系统,仅提供能力。
## 模块说明
| 模块名称 | 模块描述 | 主要功能 |
|---------|---------|---------|
| base-common | 工具基础模块 | 统一工具入口,无 Spring 依赖 |
| base-auth | 认证鉴权模块 | 通用认证和权限模型基础 |
| base-audit | 审计模块 | 通用审计引擎,支持多级审计 |
| base-file | 文件管理模块 | 统一文件存储抽象层,本地实现 |
| base-dict | 字典管理模块 | 通用数据字典能力,支持内存/DB/远程 |
| base-message | 消息通知模块 | 统一消息通知能力,支持站内消息/短信/邮件 |
| base-log | 操作日志模块 | 统一操作日志基座,支持注解和异步记录 |
## Starter 引入方式
### Maven 依赖
```xml
cn.nevermore
base-platform
1.0.0-SNAPSHOT
cn.nevermore
base-common
cn.nevermore
base-auth
cn.nevermore
base-audit
cn.nevermore
base-file
cn.nevermore
base-dict
cn.nevermore
base-message
cn.nevermore
base-log
```
## 配置示例
### 基础配置
```yaml
# 认证模块配置
nevermore:
auth:
enabled: true
# 审计模块配置
nevermore:
audit:
enabled: true
# 文件管理模块配置
nevermore:
file:
enabled: true
type: local
local:
base-path: /path/to/storage
# MinIO文件存储配置
nevermore:
file:
enabled: true
type: minio
minio:
endpoint: http://localhost:9000
access-key: minioadmin
secret-key: minioadmin
bucket-name: test-bucket
secure: false
# 字典管理模块配置
nevermore:
dict:
enabled: true
type: memory
memory:
initData:
gender:
MALE: 男
FEMALE: 女
# 消息通知模块配置
nevermore:
message:
enabled: true
in-site:
enabled: true
sms:
enabled: false
email:
enabled: false
# 操作日志模块配置
nevermore:
log:
enabled: true
```
### 操作日志使用示例
```java
import cn.nevermore.base.log.annotation.OperationLog;
@Service
public class UserService {
@OperationLog(value = "用户创建", type = "user", description = "创建新用户")
public User createUser(User user) {
// 业务逻辑
return user;
}
}
```
## 设计原则说明
1. **模块化设计**:每个模块可单独引入、单独启用,低耦合
2. **接口抽象**:核心能力通过接口定义,实现可替换
3. **自动配置**:使用 Spring Boot Starter 设计,通过自动配置接入
4. **默认实现**:提供默认实现,确保开箱即用
5. **扩展性**:支持通过接口扩展自定义实现
6. **无业务依赖**:不绑定具体业务,仅提供通用能力
7. **异步处理**:支持异步操作,提高系统性能
8. **配置灵活**:通过配置文件定制行为,支持不同场景
## 技术栈
- Java 17+
- Spring Boot 3.x
- Maven 多模块工程
- 不引入 Spring Cloud(除非必要)
- 不强制依赖 Web(base-common 不能依赖 spring-web)
## 开发规范
- 每个模块 = xxx-spring-boot-starter
- 必须包含:@AutoConfiguration、@ConfigurationProperties、spring.factories 或 AutoConfiguration.imports
- 模块默认不生效,通过 xxx.enabled=true 启用
- 禁止写任何具体业务
- 不出现具体表名、业务字段、页面逻辑