# hanggold-management **Repository Path**: hanggold/hanggold-management ## Basic Information - **Project Name**: hanggold-management - **Description**: 暂时闭源,里面涉及一些内容需要修改 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-28 - **Last Updated**: 2025-12-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## hanggold-management(后端服务) 本仓库为 hanggold 系统的后端服务,基于 Spring Boot 构建,采用多模块架构,涵盖通用组件、核心能力、数据访问与启动模块,支持 GraalVM 原生镜像与 Docker 构建。 ### 相关前端项目 - **管理后台(Web)**:[`hanggold-management-web`](https://gitee.com/hanggold/hanggold-management-web.git) - **商城客户端(UniApp)**:[`hanggold-shop-uniapp`](https://gitee.com/hanggold/hanggold-shop-uniapp.git) ### 模块说明 - **management-bootstrap**: 应用启动与 Web 层(Controller、拦截器、AOP、全局异常、Web 配置等)。 - **management-core**: 业务核心能力(缓存、链路、加解密、日志、调度、第三方集成、工具集等)。 - **management-dal**: 数据访问层(MyBatis 映射、Mapper、DO、Query、XML 映射文件等)。 - **management-common**: 通用基础(异常定义、通用配置、工具类等)。 ### 技术栈 - **Java 17** / **Spring Boot 3.0.x** / **Spring MVC** / **Spring AOT** - **MyBatis**(XML 映射) - **Maven** 多模块构建 - **GraalVM Native Image** 原生镜像 - **Docker** 镜像构建与运行 ### 环境要求 - JDK 17(必须,兼容 Spring Boot 3.0.x) - Maven 3.8+ - MySQL(提供应用所需的库与账号,按 `application.yml` 配置) - 可选:GraalVM(用于本地生成原生镜像) - 可选:Docker(用于容器镜像构建与运行) ### 本地快速开始 1. 克隆后端代码并进入项目根目录: ```bash git clone cd hanggold-management ``` 2. 配置数据库与应用参数(后端): - 编辑 `management-bootstrap/src/main/resources/application.yml` 或 `application-dev.yml`。 - 确保数据源、Redis、第三方配置(如有)可用。 3. 启动后端应用(开发模式): ```bash mvn -pl management-bootstrap -am spring-boot:run -Dspring-boot.run.profiles=dev ``` 4. 打包后端可执行 JAR: ```bash mvn clean package -DskipTests ``` 5. 运行后端可执行 JAR: 6. 获取并运行前端项目(可选): - 管理后台(Web):参见 [`hanggold-management-web`](https://gitee.com/hanggold/hanggold-management-web.git) 的 README。 - 商城客户端(UniApp):参见 [`hanggold-shop-uniapp`](https://gitee.com/hanggold/hanggold-shop-uniapp.git) 的 README。 ```bash java -jar management-bootstrap/target/management-bootstrap-*.jar --spring.profiles.active=dev ``` ### 原生镜像与容器 - 本地生成原生可执行文件(需本机具备 GraalVM Native Image 环境): ```bash mvn -Pnative native:compile ``` - 通过 Spring Boot 插件构建 Docker 镜像(需本机具备 Docker 环境): ```bash mvn -Pnative spring-boot:build-image ``` - 运行容器(示例端口与环境变量请按需调整): ```bash docker run -d \ -p 8080:8080 \ -e SPRING_PROFILES_ACTIVE=dev \ --name hanggold-management \ ``` ### 配置说明 - 配置文件位于 `management-bootstrap/src/main/resources/`: - `application.yml`: 通用基础配置 - `application-dev.yml`、`application-home.yml`: 环境配置示例 - `log/logback.xml`: 日志配置 - `META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports`: 自动配置导入 - 可通过 `--spring.profiles.active=` 指定环境。 ### 常用 Maven 命令 ```bash # 清理与编译 mvn clean compile # 运行(指定子模块与 profile) mvn -pl management-bootstrap -am spring-boot:run -Dspring-boot.run.profiles=dev # 打包(跳过测试) mvn clean package -DskipTests # 执行测试 mvn test ``` ### 代码质量 - 提供 Checkstyle 配置:`script/checkstyle.xml` 与 `script/checkstyle_cli.xml`。 - 建议在 IDE 中启用相同规则,或在 CI 中集成静态检查。 ### 项目目录速览 - `management-bootstrap`: 应用入口、Web 层、配置与启动 - `management-core`: 业务核心能力与通用组件 - `management-dal`: DO/Mapper/XML 等数据访问实现 - `management-common`: 通用异常、工具与公共配置 - `doc/`: SQL 与接口文档示例 ### 常见问题 - 端口冲突:调整 `server.port` 或释放占用端口。 - 数据库连接失败:检查 `spring.datasource.*` 配置与数据库网络可达性。 - 原生镜像构建失败:确认 GraalVM 版本、`native-image` 组件与 AOT 配置,参考 `resources/META-INF/native-image/**`。 - Spring Boot 3 兼容性:依赖 Jakarta 命名空间(`jakarta.*`),若引入三方库需确保支持 Boot 3+/Jakarta。 ### 🙇‍♀️ 致谢 衷心感谢开源社区与所有贡献者的长期付出。正因“站在巨人的肩膀上”,本项目得以快速构建与持续迭代。特别致谢(不完全列举): - Spring / Spring Boot 社区 - MyBatis 社区 - GraalVM 社区 - Docker 生态 - 每一位提出建议、反馈问题或提交 Issue/PR 的开发者 ### 支持作者 如果这个项目对你有帮助,欢迎到 Gitee 点个 Star 支持!也非常欢迎提出建议、反馈问题,或提交 PR 一起完善项目。 ### 协议与贡献 - 欢迎提交 Issue/PR 优化文档与代码。协议与版权以实际仓库声明为准。