# 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 启用 - 禁止写任何具体业务 - 不出现具体表名、业务字段、页面逻辑