From 6d20dd46945fcdda6634c8fffd44ab8df42e17ea Mon Sep 17 00:00:00 2001
From: gitee-bot
官网地址:http://kpopen.cn
- -接口文档地址:http://kpopen.cn/gateway/doc.html
+- 🌐 官网地址:http://kpopen.cn +- 🔐 演示地址:http://kpopen.cn/auth +- 📚 接口文档:http://kpopen.cn/gateway/doc.html + +## 核心特性 + +| 特性 | 说明 | +|------|------| +| 🚀 自动代码生成 | 从数据库表自动生成完整业务代码 | +| 🏗️ 微服务架构 | 基于Spring Cloud Alibaba的完整微服务解决方案 | +| 📦 开箱即用 | 无学习成本,快速上手 | +| 🛠️ 丰富工具 | 大量常用工具类封装 | +| 📝 注解驱动 | 灵活的注解支持,简化开发 | +| 📖 API文档 | 集成Knife4j增强接口文档 | +| ⚙️ 高可配置 | 灵活的配置选项满足各种需求 | + +## 技术栈 + +**后端核心** +- Spring Boot 3.x +- Spring Cloud 2023.x +- Spring Cloud Alibaba +- MyBatis Plus / MyBatis Plus Join + +**数据库与缓存** +- MySQL / Oracle / SQL Server / PostgreSQL +- Redis +- Druid连接池 +- Flyway数据库版本管理 + +**认证与安全** +- JWT认证 +- Spring Security + +**中间件** +- RabbitMQ消息队列 +- MinIO对象存储 +- Nacos服务注册/配置中心 + +**工具与扩展** +- Hutool工具库 +- EasyExcelExcel处理 +- OKHttp HTTP客户端 +- Knife4j接口文档 + +## 目录结构 -## 特性 -- 自动生成代码 -- 微服务全栈解决方案 -- 无学习成本 -- 提供大量常用工具 -- 注解支持 -- knife4j扩展 -- 可配置性高 +``` +yipeng +├── yipeng-gateway # 网关服务 +│ └── GatewayApplication # 启动类 +├── yipeng-auth # 鉴权中心服务 +│ ├── api # 对外API接口 +│ ├── common # 公共组件 +│ │ ├── cache # 缓存管理 +│ │ ├── properties # 配置属性 +│ │ └── rabbitmq # 消息队列 +│ └── modules # 业务模块 +│ ├── data # 数据字典 +│ ├── dept # 部门管理 +│ ├── logRecord # 日志记录 +│ ├── menu # 菜单管理 +│ ├── post # 岗位管理 +│ ├── project # 项目管理 +│ ├── role # 角色管理 +│ ├── user # 用户管理 +│ └── welcome # 首页数据 +├── yipeng-common # 公共模块 +│ ├── framework-core # 框架核心 +│ │ ├── annotation # 自定义注解 +│ │ ├── configruation # 配置类 +│ │ ├── constant # 常量 +│ │ ├── controller # 内置接口 +│ │ ├── entity # 实体类 +│ │ ├── exception # 异常处理 +│ │ ├── listener # 监听器 +│ │ ├── mapper # 基础Mapper +│ │ ├── transactiona # 事务管理 +│ │ └── utils # 工具类 +│ ├── framework-feign # Feign客户端 +│ └── framework-security # 权限模块 +└── yipeng-week-flow # 业务模块(周计划) +``` -## 支持数据库 -- MySQL (默认) -- Oracle -- SQL Server -- PostgreSQL +## 快速开始 +详细的快速开始文档请访问:[易鹏官方文档](http://kpopen.cn/kpBack-cloud-boot3/001_%E4%BB%8B%E7%BB%8D.html) -## 使用的技术栈 -springBoot、springCloud、springcloud-alibaba、mybatis-plus、mybatis-plus-join、pagehelper、druid、flywaydb、jwt、minio、knife4j、alibaba-json、okhttp、easyexcel、tika、staxon、oshi、bitwalker、smiley、pinyin4j、zxing、hutool、lombok +### 环境要求 -## 代码托管 +- JDK 17+ +- Maven 3.8+ +- MySQL 8.0+ / PostgreSQL +- Redis +- Nacos +- RabbitMQ -码云 +### 基本架构图 -# 目录结构 +``` +┌─────────────────────────────────────────────────────────┐ +│ 客户端 │ +└─────────────────────┬───────────────────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────┐ +│ yipeng-gateway (网关) │ +└─────────────────────┬───────────────────────────────────┘ + │ + ┌───────────┴───────────┐ + ▼ ▼ +┌─────────────────────┐ ┌─────────────────────┐ +│ yipeng-auth │ │ yipeng-week-flow │ +│ (鉴权中心) │ │ (业务模块) │ +└─────────────────────┘ └─────────────────────┘ + │ + ▼ +┌─────────────────────────────────────────────────────────┐ +│ yipeng-common (公共模块) │ +│ framework-core | framework-feign | framework-security │ +└─────────────────────────────────────────────────────────┘ +``` + +## 常用API示例 +### 用户登录 +```java +POST /auth/user/login +{ + "userName": "admin", + "password": "admin123", + "projectCode": "authentication" +} ``` -yipeng项目根目录 -├── yipeng-gateway # 网关项目 -│ ├── com.kp.framework -│ │ ├── GatewayApplication 启动文件 -│ ├── resources -│ │ ├── bootstrap.yml 切换不同环境的配置文件 -│ │ ├── bootstrap-dev.yml 开发环境配置文件 -├── yipeng-auth # 鉴权项目 -│ ├── com.kp.framework -│ │ ├── api 对外接口存放地方 -│ │ ├── common 存放系统公共文件 -│ │ │ ├── cache 缓存文件 -│ │ │ ├── properties 读取ymml|nacos 配置文件 -│ │ │ ├── rabbitmq rabbitmq消费 -│ │ ├── config 当前项目配置文件 -│ │ ├── modules 项目功能模块代码 -│ │ │ ├── data 下拉框接口 -│ │ │ ├── dept 部门模块相关接口代码 -│ │ │ ├── logRecord 日志记录模块相关接口代码 -│ │ │ ├── menu 菜单模块相关接口代码 -│ │ │ ├── post 岗位模块相关接口代码 -│ │ │ ├── project 项目模块相关接口代码 -│ │ │ ├── role 角色模块相关接口代码 -│ │ │ ├── user 用户模块相关接口代码 -│ │ │ ├── welcome 欢迎页面相关接口代码 -│ │ ├── AuthenticationApplication 启动文件 -├── yipeng-common # 系统共用配置 -│ ├── framework-core 框架核心模块 -│ │ │── com.kp.framework -│ │ │ ├── annotation 框架自定义扩展注解 -│ │ │ ├── configruation 框架配置信息 -│ │ │ ├── constant 框架常量配置 -│ │ │ ├── controller 框架内置的接口 -│ │ │ ├── entity 框架内置实体类 -│ │ │ ├── enums 框架内置枚举类 -│ │ │ ├── exception 自定义异常和全局异常处理 -│ │ │ ├── listener 框架监听器 -│ │ │ ├── mapper mybatisPlusMapper控制信息 -│ │ │ ├── transactiona 全局异常处理器 -│ │ │ ├── utils 框架内置工具类 -│ │ │ │ ├── kptool 鲲鹏工具封装类 -│ ├── framework-security 框架权限模块 -│ │ │── com.kp.framework -│ │ │ ├── common 公共文件 -│ │ │ │ ├── annotation 数据权限自定义注解 -│ │ │ │ ├── enums 枚举 -│ │ │ │ ├── parent 父类 -│ │ │ │ ├── properties 读取ymml|nacos 配置文件 -│ │ │ │ ├── security 权限模块 -│ │ │ ├── config 配置信息 -├────────────── modules 模块功能 + +### 查询用户列表 +```java +POST /auth/user/page/list +{ + "pageNum": 1, + "pageSize": 10 +} +``` + +### 文件上传 +```java +POST /minio/file/upload +Content-Type: multipart/form-data ``` +## 框架内置注解 +| 注解 | 说明 | +|------|------| +| @KPApiJsonParam | API参数说明 | +| @KPApiJsonParamMode | API参数模式 | +| @KPVerifyNote | 参数验证 | +| @KPExcludeInterfaceJournal | 排除接口记录 | +| @KPObjectChangeLogNote | 对象变更日志 | +| @KPRepeatSubmitNote | 防止重复提交 | +| @KPProhibitCrawlerNote | 禁止爬虫 | +## 贡献指南 +欢迎提交Issue和Pull Request! +## 许可证 +本项目基于 Apache License 2.0 协议开源。 -##快速开始 +--- -[快速开始](http://kpopen.cn/kpBack-cloud-boot3/001_%E4%BB%8B%E7%BB%8D.html) +
+ 让微服务开发更简单
+ Made with ❤️ by KoaPower Team
+