# xck-framework **Repository Path**: xiaochangkun/xck-framework ## Basic Information - **Project Name**: xck-framework - **Description**: xck-framework 是一个基于Spring Cloud Alibaba的企业级微服务架构框架,专为快速构建分布式系统而设计。框架提供完整的微服务生态,包括服务治理、分布式事务、监控告警等企业级特性。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-09 - **Last Updated**: 2026-05-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # XCK Framework - Spring Cloud Alibaba 微服务框架 ## 项目介绍 xck-framework 是一个基于Spring Cloud Alibaba的企业级微服务架构框架,专为快速构建分布式系统而设计。框架提供完整的微服务生态,包括服务治理、分布式事务、监控告警等企业级特性。 ## 项目结构 ``` xck-framework/ # 项目根目录(容器) ├── pom.xml # 容器POM(仅定义模块) ├── README.md # 项目说明 ├── docker-compose.yml # Docker编排 ├── Jenkinsfile # CI/CD配置 ├── .gitignore # Git忽略文件 ├── .lingma/ # 通义灵码配置文件 │ ├── rules/ # 通义灵码规则 │ │ ├── java-rules.md # Java规则 ├── xck-dependencies/ # 依赖管理模块(独立项目 - 统一依赖版本管理) │ ├── pom.xml # Dependencies POM(定义所有依赖版本) ├── xck-cloud/ # 微服务模块(独立项目) │ ├── pom.xml │ ├── xck-gateway/ # API网关 │ ├── xck-system/ # 系统服务(菜单、角色、权限、字典、配置) │ │ ├── xck-system-api/ # API 模块(定义服务对外暴露的接口和数据结构) │ │ │ ├── constant/ # 常量 │ │ │ ├── dto/ # 数据传输对象(请求/响应参数) │ │ │ ├── vo/ # 视图对象(返回给前端的数据) │ │ │ ├── feign/ # FeignClient 接口定义 │ │ │ │ ├── UserFeignClient.java # FeignClient 接口 │ │ │ │ ├── fallback/ │ │ │ │ │ └── UserFallbackFactory.java # 降级工厂 │ │ ├── xck-system-biz/ # 业务模块 │ │ │ ├── service/ # 业务接口 │ │ │ ├── mapper/ # mapper │ │ │ ├── entity/ # 实体类 │ │ │ ├── convert/ # 转换器包 │ │ ├── xck-system-controller/ # 控制器模块 │ │ ├── xck-system-service/ # 启动模块 │ ├── xck-auth/ # 认证服务(登录、Token、OAuth2) │ ├── xck-user/ # 用户服务(用户信息) │ ├── xck-log/ # 日志服务(操作日志、访问日志) │ ├── xck-file/ # 文件服务(上传、下载、存储) │ ├── xck-job/ # 任务调度服务(定时任务) | ├── xck-monitor/ # 监控服务(指标收集、告警) │ ├── xck-commons/ # 公共组件模块 │ ├── pom.xml │ ├── xck-common-core/ # 核心工具类(通用工具、常量、枚举) │ ├── xck-common-web/ # Web层通用组件(统一响应、异常处理) │ ├── xck-common-security/ # 安全组件(Sa-Token、Spring Security) │ ├── xck-common-mybatis/ # MyBatis通用组件(分页、BaseMapper) │ ├── xck-common-redis/ # Redis组件(缓存、分布式锁) │ ├── xck-common-kafka/ # Kafka组件(消息队列) │ ├── xck-common-oss/ # 对象存储组件(阿里云OSS、七牛云) │ └── xck-common-pay/ # 支付组件(微信、支付宝) ├── xck-starters/ # Starter自动配置模块(独立项目) │ ├── pom.xml │ ├── xck-starter-redis/ # Redis自动配置(Lettuce、连接池、分布式锁) │ ├── xck-starter-web/ # Web自动配置(Jackson、Cors、Interceptor) │ ├── xck-starter-mybatis/ # MyBatis自动配置(Druid、PageHelper) │ ├── xck-starter-security/ # 安全自动配置(Sa-Token、RBAC) │ ├── xck-starter-log/ # 日志自动配置(Logback、MDC) │ ├── xck-starter-swagger/ # API文档自动配置(Knife4j) │ ├── xck-starter-kafka/ # Kafka自动配置(生产者、消费者) │ ├── xck-starter-oss/ # OSS自动配置(多云支持) │ ├── xck-starter-pay/ # 支付自动配置(微信、支付宝) │ └── xck-starter-monitor/ # 监控自动配置(Prometheus、Grafana) │ ├── xck-infrastructure/ # 基础设施 │ ├── xck-nacos/ # 注册中心 + 配置中心 │ ├── xck-sentinel/ # 流量控制 + 熔断降级 │ ├── xck-seata/ # 分布式事务 │ ├── xck-skywalking/ # 链路追踪 │ ├── xck-prometheus/ # 监控指标收集 │ ├── xck-grafana/ # 监控可视化 │ └── xck-elk/ # 日志收集与分析(Elasticsearch + Logstash + Kibana) │ ├── xck-web/ # 前端模块 │ ├── xck-web-admin/ # 后台管理系统(Vue3 + Element Plus) │ ├── xck-web-portal/ # 门户网站(Vue3 + Vite) │ ├── xck-web-mobile/ # 移动端H5(Vue3 + Vant) │ └── xck-web-app/ # 移动App(uni-app) │ ├── xck-database/ # 数据库脚本 │ ├── schema/ # 数据库结构脚本 │ │ ├── auth.sql # 认证服务表 │ │ ├── user.sql # 用户服务表 │ │ ├── system.sql # 系统服务表 │ │ ├── log.sql # 日志服务表 │ │ └── business.sql # 业务服务表 ├── data/ # 初始数据脚本 │ │ ├── init_menu.sql # 菜单初始化 │ │ ├── init_role.sql # 角色初始化 │ │ └── init_dict.sql # 字典初始化 │ └── migration/ # 数据库迁移脚本 │ │ └── V1.0.0__init.sql │ └── xck-docs/ # 文档模块 │ ├── README.md # 项目说明 │ ├── api/ # API文档 │ ├── deployment/ # 部署文档 │ └── development/ # 开发指南 ## 快速开始 ### 1. 环境要求 - JDK 21+ - Maven 3.6+ - MySQL 8.0+ - Redis 6.0+ - Node.js 16+ (前端开发) ### 2. 快速启动 ```bash # 克隆项目 git clone https://github.com/your-org/xck-parent.git # 启动基础设施 docker-compose up -d nacos redis mysql # 启动网关 cd xck-cloud/xck-gateway mvn spring-boot:run # 启动系统服务 cd xck-cloud/xck-system/xck-system-service mvn spring-boot:run ``` ### 3. 企业级特性 - 🚀 **快速开发** - Starter自动配置,开箱即用 - 🔒 **安全可靠** - 完整的认证授权体系 - 📊 **监控告警** - 全链路监控和性能指标 - 🔄 **服务治理** - 服务注册、配置管理、流量控制 - 📦 **容器化** - Docker + Kubernetes支持 ## 模块说明 ### Dependencies模块(xck-dependencies) xck-dependencies是项目的依赖版本管理模块,采用Bill of Materials(BOM)模式统一管理所有第三方依赖的版本。 **主要功能:** - 统一管理Spring Boot、Spring Cloud、Spring Cloud Alibaba等核心框架版本 - 集中管理MyBatis-Plus、MySQL、Druid、FastJson2、Hutool等常用依赖版本 - 避免版本冲突,确保依赖版本一致性 - 简化子模块的依赖配置,无需指定版本号 **使用方式:** ```xml com.xck xck-dependencies 1.0-SNAPSHOT pom import ``` **当前管理的依赖版本:** - Spring Boot: 3.5.13 - Spring Cloud: 2025.0.2 - Spring Cloud Alibaba: 2025.0.0.0 - MyBatis-Plus: 3.5.7 - MySQL: 8.4.0 - Druid: 1.2.23 - FastJson2: 2.0.52 - Hutool: 5.8.32 - Lombok: 1.18.34 - MapStruct: 1.6.3 ### 核心服务 | 服务 | 功能 | 端口 | 说明 | |------|------|------|------| | xck-gateway | API网关 | 8080 | 统一入口,路由转发 | | xck-auth | 认证服务 | 8081 | 登录认证,Token管理 | | xck-system | 系统服务 | 8082 | 用户权限,菜单管理 | | xck-user | 用户服务 | 8083 | 用户信息,个人中心 | ### 公共组件 | 组件 | 功能 | 依赖 | |------|------|------| | xck-common-core | 核心工具 | - | | xck-common-web | Web组件 | Servlet, Spring Web | | xck-common-security | 安全组件 | Sa-Token, Spring Security | | xck-common-redis | Redis组件 | Spring Data Redis | ### Starter配置 | Starter | 功能 | 自动配置 | |--------|------|----------| | xck-starter-web | Web配置 | Jackson, Cors, 拦截器 | | xck-starter-redis | Redis配置 | Lettuce, 连接池, 分布式锁 | | xck-starter-mybatis | MyBatis配置 | Druid, 分页, BaseMapper | │ ├── QUICKSTART.md # 快速开始 │ ├── ARCHITECTURE.md # 架构设计 │ ├── DEPLOYMENT.md # 部署指南 │ ├── API.md # API文档 │ ├── CHANGELOG.md # 更新日志 │ └── CONTRIBUTING.md # 贡献指南 ```