格式化代码
This commit is contained in:
398
README.md
398
README.md
@@ -139,22 +139,17 @@ graph LR
|
|||||||
User[用户] --> Login[登录认证]
|
User[用户] --> Login[登录认证]
|
||||||
User --> Menu[菜单访问]
|
User --> Menu[菜单访问]
|
||||||
User --> Data[数据操作]
|
User --> Data[数据操作]
|
||||||
|
|
||||||
Login --> Auth[认证授权]
|
Login --> Auth[认证授权]
|
||||||
Auth --> Token[Token管理]
|
Auth --> Token[Token管理]
|
||||||
Auth --> Redis[Redis缓存]
|
Auth --> Redis[Redis缓存]
|
||||||
|
|
||||||
Menu --> Perm[权限验证]
|
Menu --> Perm[权限验证]
|
||||||
Role[角色] --> Perm
|
Role[角色] --> Perm
|
||||||
|
|
||||||
Data --> LogFilter[日志过滤器]
|
Data --> LogFilter[日志过滤器]
|
||||||
LogFilter --> LogBus[日志总线]
|
LogFilter --> LogBus[日志总线]
|
||||||
LogBus --> MQ[RabbitMQ]
|
LogBus --> MQ[RabbitMQ]
|
||||||
MQ --> LogMq[日志消费者]
|
MQ --> LogMq[日志消费者]
|
||||||
LogMq --> ES[Elasticsearch]
|
LogMq --> ES[Elasticsearch]
|
||||||
|
|
||||||
Cache[Redis缓存] --> Data
|
Cache[Redis缓存] --> Data
|
||||||
|
|
||||||
Gen[代码生成] --> DB[数据库]
|
Gen[代码生成] --> DB[数据库]
|
||||||
Gen --> Velocity[Velocity模板]
|
Gen --> Velocity[Velocity模板]
|
||||||
```
|
```
|
||||||
@@ -170,7 +165,6 @@ graph TD
|
|||||||
xtools-app --> gen[xtools-app-gen<br/>代码生成模块]
|
xtools-app --> gen[xtools-app-gen<br/>代码生成模块]
|
||||||
xtools-app --> monitor[xtools-app-monitor<br/>监控模块]
|
xtools-app --> monitor[xtools-app-monitor<br/>监控模块]
|
||||||
xtools-app --> standalone[xtools-app-standalone<br/>单体部署模块]
|
xtools-app --> standalone[xtools-app-standalone<br/>单体部署模块]
|
||||||
|
|
||||||
common --> cache[common-cache<br/>缓存模块]
|
common --> cache[common-cache<br/>缓存模块]
|
||||||
common --> call[common-call<br/>远程调用模块]
|
common --> call[common-call<br/>远程调用模块]
|
||||||
common --> jar[common-jar<br/>JAR管理模块]
|
common --> jar[common-jar<br/>JAR管理模块]
|
||||||
@@ -179,10 +173,8 @@ graph TD
|
|||||||
common --> mq[common-mq<br/>消息队列模块]
|
common --> mq[common-mq<br/>消息队列模块]
|
||||||
common --> sentinel[common-sentinel<br/>限流模块]
|
common --> sentinel[common-sentinel<br/>限流模块]
|
||||||
common --> task[common-task<br/>异步任务模块]
|
common --> task[common-task<br/>异步任务模块]
|
||||||
|
|
||||||
log --> log-bus[log-bus<br/>日志总线]
|
log --> log-bus[log-bus<br/>日志总线]
|
||||||
log --> log-filter[log-filter<br/>日志过滤器]
|
log --> log-filter[log-filter<br/>日志过滤器]
|
||||||
|
|
||||||
sys --> sys-api[sys-api<br/>系统API接口]
|
sys --> sys-api[sys-api<br/>系统API接口]
|
||||||
sys --> sys-auth[sys-auth<br/>认证授权]
|
sys --> sys-auth[sys-auth<br/>认证授权]
|
||||||
sys --> sys-biz[sys-biz<br/>系统业务逻辑]
|
sys --> sys-biz[sys-biz<br/>系统业务逻辑]
|
||||||
@@ -194,10 +186,8 @@ graph TD
|
|||||||
sys --> sys-param[sys-param<br/>系统参数]
|
sys --> sys-param[sys-param<br/>系统参数]
|
||||||
sys --> sys-scheduled[sys-scheduled<br/>定时任务]
|
sys --> sys-scheduled[sys-scheduled<br/>定时任务]
|
||||||
sys --> sys-risk[sys-risk<br/>风控管理]
|
sys --> sys-risk[sys-risk<br/>风控管理]
|
||||||
|
|
||||||
gen --> gen-biz[gen-biz<br/>代码生成业务]
|
gen --> gen-biz[gen-biz<br/>代码生成业务]
|
||||||
gen --> gen-boot[gen-boot<br/>代码生成微服务启动]
|
gen --> gen-boot[gen-boot<br/>代码生成微服务启动]
|
||||||
|
|
||||||
monitor --> monitor-boot[monitor-boot<br/>监控服务端]
|
monitor --> monitor-boot[monitor-boot<br/>监控服务端]
|
||||||
monitor --> monitor-client[monitor-client<br/>监控客户端]
|
monitor --> monitor-client[monitor-client<br/>监控客户端]
|
||||||
```
|
```
|
||||||
@@ -236,7 +226,6 @@ flowchart TB
|
|||||||
A1 --> A2 --> A3 --> B1
|
A1 --> A2 --> A3 --> B1
|
||||||
B1 --> B2 --> B3 --> C1
|
B1 --> B2 --> B3 --> C1
|
||||||
C1 --> C2 --> C3
|
C1 --> C2 --> C3
|
||||||
|
|
||||||
A1 -.-> D1
|
A1 -.-> D1
|
||||||
A1 -.-> D2
|
A1 -.-> D2
|
||||||
A1 -.-> D3
|
A1 -.-> D3
|
||||||
@@ -245,19 +234,19 @@ flowchart TB
|
|||||||
|
|
||||||
### 2.3 模块职责
|
### 2.3 模块职责
|
||||||
|
|
||||||
| 层级 | 模块 | 职责说明 |
|
| 层级 | 模块 | 职责说明 |
|
||||||
|------|------|----------|
|
|------------------|-----------------------------------------|-------------------------------------------------|
|
||||||
| **Controller层** | SysUserController、SysLoginController等 | 接收HTTP请求、参数验证(@Valid)、调用Service层、返回统一响应(Result) |
|
| **Controller层** | SysUserController、SysLoginController等 | 接收HTTP请求、参数验证(@Valid)、调用Service层、返回统一响应(Result) |
|
||||||
| **Service层** | SysUserServiceImpl、SysLoginServiceImpl等 | 实现业务逻辑、事务控制(@Transactional)、调用Mapper层、缓存操作 |
|
| **Service层** | SysUserServiceImpl、SysLoginServiceImpl等 | 实现业务逻辑、事务控制(@Transactional)、调用Mapper层、缓存操作 |
|
||||||
| **BaseService层** | SysUserBaseService等 | 继承MyBatis-Plus ServiceImpl,提供基础CRUD操作 |
|
| **BaseService层** | SysUserBaseService等 | 继承MyBatis-Plus ServiceImpl,提供基础CRUD操作 |
|
||||||
| **Mapper层** | SysUserMapper、SysRoleMapper等 | 继承MyBatis-Plus BaseMapper,数据库访问、SQL执行 |
|
| **Mapper层** | SysUserMapper、SysRoleMapper等 | 继承MyBatis-Plus BaseMapper,数据库访问、SQL执行 |
|
||||||
| **Entity层** | SysUser、SysRole、SysMenu等 | 数据库实体映射 |
|
| **Entity层** | SysUser、SysRole、SysMenu等 | 数据库实体映射 |
|
||||||
| **DTO层** | Req(请求)、Resp(响应)、Excel | 数据传输对象 |
|
| **DTO层** | Req(请求)、Resp(响应)、Excel | 数据传输对象 |
|
||||||
| **Convert层** | SysUserConvert、SysRoleConvert等 | MapStruct对象转换 |
|
| **Convert层** | SysUserConvert、SysRoleConvert等 | MapStruct对象转换 |
|
||||||
| **Config层** | SysConfig、ApiConfig等 | 配置类 |
|
| **Config层** | SysConfig、ApiConfig等 | 配置类 |
|
||||||
| **MQ层** | SysLogMq、SysTaskMq等 | 消息队列消费者 |
|
| **MQ层** | SysLogMq、SysTaskMq等 | 消息队列消费者 |
|
||||||
| **Job层** | BaseJob、SysLogJob等 | 定时任务、异步任务 |
|
| **Job层** | BaseJob、SysLogJob等 | 定时任务、异步任务 |
|
||||||
| **Utils层** | PasswdUtils、AuthUtils等 | 工具类 |
|
| **Utils层** | PasswdUtils、AuthUtils等 | 工具类 |
|
||||||
|
|
||||||
### 2.4 包结构设计
|
### 2.4 包结构设计
|
||||||
|
|
||||||
@@ -287,12 +276,12 @@ xtools.app.{module}
|
|||||||
|
|
||||||
项目支持两种部署模式:
|
项目支持两种部署模式:
|
||||||
|
|
||||||
| 模块 | 说明 |
|
| 模块 | 说明 |
|
||||||
|------|------|
|
|-----------------------------|-----------------------------------------------------|
|
||||||
| **xtools-app-standalone** | 单体部署模式,包含所有模块,通过 spring-boot-maven-plugin 打包为可执行JAR |
|
| **xtools-app-standalone** | 单体部署模式,包含所有模块,通过 spring-boot-maven-plugin 打包为可执行JAR |
|
||||||
| **xtools-app-sys-boot** | 微服务模式 - 系统管理服务 |
|
| **xtools-app-sys-boot** | 微服务模式 - 系统管理服务 |
|
||||||
| **xtools-app-gen-boot** | 微服务模式 - 代码生成服务 |
|
| **xtools-app-gen-boot** | 微服务模式 - 代码生成服务 |
|
||||||
| **xtools-app-monitor-boot** | 微服务模式 - 监控服务 |
|
| **xtools-app-monitor-boot** | 微服务模式 - 监控服务 |
|
||||||
|
|
||||||
## 三、项目功能设计
|
## 三、项目功能设计
|
||||||
|
|
||||||
@@ -321,6 +310,7 @@ flowchart TD
|
|||||||
#### 验证码机制
|
#### 验证码机制
|
||||||
|
|
||||||
系统支持两种验证码模式(随机切换):
|
系统支持两种验证码模式(随机切换):
|
||||||
|
|
||||||
- **GIF动态验证码**:基于 Easy Captcha 生成动态图片验证码
|
- **GIF动态验证码**:基于 Easy Captcha 生成动态图片验证码
|
||||||
- **算术验证码**:随机生成加减法算术题图片
|
- **算术验证码**:随机生成加减法算术题图片
|
||||||
|
|
||||||
@@ -332,10 +322,8 @@ flowchart TD
|
|||||||
graph TD
|
graph TD
|
||||||
User[用户 SysUser] -->|多对多| UserRole[用户角色关联<br/>SysUserRole]
|
User[用户 SysUser] -->|多对多| UserRole[用户角色关联<br/>SysUserRole]
|
||||||
UserRole -->|多对多| Role[角色 SysRole]
|
UserRole -->|多对多| Role[角色 SysRole]
|
||||||
|
|
||||||
Role -->|多对多| RoleMenu[角色菜单关联<br/>SysRoleMenu]
|
Role -->|多对多| RoleMenu[角色菜单关联<br/>SysRoleMenu]
|
||||||
RoleMenu -->|多对多| Menu[菜单权限 SysMenu]
|
RoleMenu -->|多对多| Menu[菜单权限 SysMenu]
|
||||||
|
|
||||||
Menu --> M1[页面菜单]
|
Menu --> M1[页面菜单]
|
||||||
Menu --> M2[按钮权限]
|
Menu --> M2[按钮权限]
|
||||||
Menu --> M3[接口权限]
|
Menu --> M3[接口权限]
|
||||||
@@ -348,13 +336,11 @@ flowchart TD
|
|||||||
A[用户发起请求] --> B{判断请求类型}
|
A[用户发起请求] --> B{判断请求类型}
|
||||||
B -->|微服务请求| C[验证Cloud Token]
|
B -->|微服务请求| C[验证Cloud Token]
|
||||||
B -->|常规请求| D[获取请求URI]
|
B -->|常规请求| D[获取请求URI]
|
||||||
|
|
||||||
C --> C1{Token有效?}
|
C --> C1{Token有效?}
|
||||||
C1 -->|无效| C2[返回UNAUTHORIZED]
|
C1 -->|无效| C2[返回UNAUTHORIZED]
|
||||||
C1 -->|有效| C3[传递头部信息]
|
C1 -->|有效| C3[传递头部信息]
|
||||||
C3 --> C4[校验掩码设置]
|
C3 --> C4[校验掩码设置]
|
||||||
C4 --> C5[放行请求]
|
C4 --> C5[放行请求]
|
||||||
|
|
||||||
D --> D1{URI在权限白名单?}
|
D --> D1{URI在权限白名单?}
|
||||||
D1 -->|是| D2[放行请求]
|
D1 -->|是| D2[放行请求]
|
||||||
D1 -->|否| D3{获取UID}
|
D1 -->|否| D3{获取UID}
|
||||||
@@ -373,6 +359,7 @@ flowchart TD
|
|||||||
#### 认证模式
|
#### 认证模式
|
||||||
|
|
||||||
系统支持两种认证模式,通过请求头 `Cloud` 标识区分:
|
系统支持两种认证模式,通过请求头 `Cloud` 标识区分:
|
||||||
|
|
||||||
- **微服务认证**:验证 Cloud Token(一次性令牌,Redis Hash存储)
|
- **微服务认证**:验证 Cloud Token(一次性令牌,Redis Hash存储)
|
||||||
- **常规认证**:验证 UID + AccessToken + URI权限
|
- **常规认证**:验证 UID + AccessToken + URI权限
|
||||||
|
|
||||||
@@ -393,12 +380,12 @@ flowchart LR
|
|||||||
|
|
||||||
#### 日志类型
|
#### 日志类型
|
||||||
|
|
||||||
| 类型 | 说明 | 处理方式 |
|
| 类型 | 说明 | 处理方式 |
|
||||||
|------|------|----------|
|
|------|----------|---------------------------------|
|
||||||
| 操作日志 | 用户操作行为记录 | LogFilter采集 -> MQ -> ES |
|
| 操作日志 | 用户操作行为记录 | LogFilter采集 -> MQ -> ES |
|
||||||
| 系统日志 | 系统运行日志 | LogBus记录 -> MQ -> ES |
|
| 系统日志 | 系统运行日志 | LogBus记录 -> MQ -> ES |
|
||||||
| 任务日志 | 定时任务执行日志 | BaseJob记录 -> LogBus -> MQ -> ES |
|
| 任务日志 | 定时任务执行日志 | BaseJob记录 -> LogBus -> MQ -> ES |
|
||||||
| 错误日志 | 异常和错误信息 | 异常捕获 -> LogBus -> MQ -> ES |
|
| 错误日志 | 异常和错误信息 | 异常捕获 -> LogBus -> MQ -> ES |
|
||||||
|
|
||||||
#### 日志配置
|
#### 日志配置
|
||||||
|
|
||||||
@@ -416,22 +403,17 @@ flowchart TD
|
|||||||
A[配置数据源] --> B[测试连接]
|
A[配置数据源] --> B[测试连接]
|
||||||
B --> C[同步数据库]
|
B --> C[同步数据库]
|
||||||
C --> D{读取表信息}
|
C --> D{读取表信息}
|
||||||
|
|
||||||
D --> E[获取表列表<br/>DatabaseMetaData]
|
D --> E[获取表列表<br/>DatabaseMetaData]
|
||||||
E --> F[过滤排除表]
|
E --> F[过滤排除表]
|
||||||
F --> G[生成表信息<br/>GenTable]
|
F --> G[生成表信息<br/>GenTable]
|
||||||
|
|
||||||
G --> H[获取字段信息<br/>DatabaseMetaData]
|
G --> H[获取字段信息<br/>DatabaseMetaData]
|
||||||
H --> I[处理字段类型<br/>类型映射,表单类型]
|
H --> I[处理字段类型<br/>类型映射,表单类型]
|
||||||
I --> J[生成字段信息<br/>GenTableColumn]
|
I --> J[生成字段信息<br/>GenTableColumn]
|
||||||
|
|
||||||
J --> K[保存到数据库]
|
J --> K[保存到数据库]
|
||||||
K --> L{用户操作}
|
K --> L{用户操作}
|
||||||
|
|
||||||
L -->|预览代码| M[Velocity渲染模板]
|
L -->|预览代码| M[Velocity渲染模板]
|
||||||
L -->|下载代码| N[Velocity渲染模板]
|
L -->|下载代码| N[Velocity渲染模板]
|
||||||
L -->|修改配置| O[保存表和字段配置]
|
L -->|修改配置| O[保存表和字段配置]
|
||||||
|
|
||||||
M --> P[返回代码列表<br/>GenCodeDto]
|
M --> P[返回代码列表<br/>GenCodeDto]
|
||||||
N --> Q[打包ZIP下载]
|
N --> Q[打包ZIP下载]
|
||||||
```
|
```
|
||||||
@@ -446,15 +428,15 @@ flowchart TD
|
|||||||
|
|
||||||
#### 代码生成特性
|
#### 代码生成特性
|
||||||
|
|
||||||
| 特性 | 说明 |
|
| 特性 | 说明 |
|
||||||
|------|------|
|
|--------|---------------------------|
|
||||||
| 多数据源 | 支持 MySQL 等多种数据库类型 |
|
| 多数据源 | 支持 MySQL 等多种数据库类型 |
|
||||||
| 表结构同步 | 自动读取表和字段元数据 |
|
| 表结构同步 | 自动读取表和字段元数据 |
|
||||||
| 智能类型映射 | 自动将数据库类型映射为 Java 类型 |
|
| 智能类型映射 | 自动将数据库类型映射为 Java 类型 |
|
||||||
| 表单类型推断 | 根据字段类型自动推断表单组件 |
|
| 表单类型推断 | 根据字段类型自动推断表单组件 |
|
||||||
| 查询方式推断 | String类型默认LIKE,时间类型默认范围查询 |
|
| 查询方式推断 | String类型默认LIKE,时间类型默认范围查询 |
|
||||||
| 模板配置 | 可配置后端和前端项目名称、模块路径等 |
|
| 模板配置 | 可配置后端和前端项目名称、模块路径等 |
|
||||||
| ZIP下载 | 生成的代码打包为ZIP文件下载 |
|
| ZIP下载 | 生成的代码打包为ZIP文件下载 |
|
||||||
|
|
||||||
### 3.4 任务调度设计
|
### 3.4 任务调度设计
|
||||||
|
|
||||||
@@ -477,12 +459,12 @@ flowchart TD
|
|||||||
|
|
||||||
#### 任务类型
|
#### 任务类型
|
||||||
|
|
||||||
| 类型 | 实现方式 | 说明 |
|
| 类型 | 实现方式 | 说明 |
|
||||||
|------|----------|------|
|
|----------|-------------------------------|--------------------|
|
||||||
| 异步任务 | `BaseJob implements Runnable` | 支持分布式锁,防止重复执行 |
|
| 异步任务 | `BaseJob implements Runnable` | 支持分布式锁,防止重复执行 |
|
||||||
| XXL-JOB | `xtools-boot-job-xxl`(可选) | 分布式任务调度平台 |
|
| XXL-JOB | `xtools-boot-job-xxl`(可选) | 分布式任务调度平台 |
|
||||||
| 定时任务 | `SysScheduled` | Spring Task 定时任务管理 |
|
| 定时任务 | `SysScheduled` | Spring Task 定时任务管理 |
|
||||||
| Spring任务 | `JobInterface.execute()` | Spring 原生任务执行接口 |
|
| Spring任务 | `JobInterface.execute()` | Spring 原生任务执行接口 |
|
||||||
|
|
||||||
#### 任务调度特性
|
#### 任务调度特性
|
||||||
|
|
||||||
@@ -495,20 +477,20 @@ flowchart TD
|
|||||||
|
|
||||||
#### 缓存策略
|
#### 缓存策略
|
||||||
|
|
||||||
| 缓存Key | 说明 | 过期时间 |
|
| 缓存Key | 说明 | 过期时间 |
|
||||||
|---------|------|----------|
|
|------------------------------------|----------|------|
|
||||||
| `xtools-app:uid:{uid}:sm2` | SM2公钥缓存 | 5分钟 |
|
| `xtools-app:uid:{uid}:sm2` | SM2公钥缓存 | 5分钟 |
|
||||||
| `xtools-app:uid:{uid}:captcha` | 验证码缓存 | 60秒 |
|
| `xtools-app:uid:{uid}:captcha` | 验证码缓存 | 60秒 |
|
||||||
| `xtools-app:auth:sys:user:{token}` | 用户认证信息 | 1小时 |
|
| `xtools-app:auth:sys:user:{token}` | 用户认证信息 | 1小时 |
|
||||||
| `xtools-app:auth:sys:uri` | 权限URI缓存 | 永不过期 |
|
| `xtools-app:auth:sys:uri` | 权限URI缓存 | 永不过期 |
|
||||||
| `xtools-app:auth:cloud:token` | 微服务Token | 60秒 |
|
| `xtools-app:auth:cloud:token` | 微服务Token | 60秒 |
|
||||||
| `xtools-app:mq:msg:err:{id}` | MQ消息错误次数 | 60秒 |
|
| `xtools-app:mq:msg:err:{id}` | MQ消息错误次数 | 60秒 |
|
||||||
| `xtools-app:lock:job:{className}` | 任务分布式锁 | 5分钟 |
|
| `xtools-app:lock:job:{className}` | 任务分布式锁 | 5分钟 |
|
||||||
| `xtools-app:risk:ip:{ip}` | 风控IP | 永不过期 |
|
| `xtools-app:risk:ip:{ip}` | 风控IP | 永不过期 |
|
||||||
| `xtools-app:risk:uri:{uri}` | 风控URI | 永不过期 |
|
| `xtools-app:risk:uri:{uri}` | 风控URI | 永不过期 |
|
||||||
| `xtools-app:sys:cache:param:{key}` | 系统参数缓存 | 永不过期 |
|
| `xtools-app:sys:cache:param:{key}` | 系统参数缓存 | 永不过期 |
|
||||||
| `xtools-app:sys:cache:jar:{name}` | JAR包缓存 | 永不过期 |
|
| `xtools-app:sys:cache:jar:{name}` | JAR包缓存 | 永不过期 |
|
||||||
| `xtools-app:sys:cache:addr:{key}` | 地址缓存 | 1小时 |
|
| `xtools-app:sys:cache:addr:{key}` | 地址缓存 | 1小时 |
|
||||||
|
|
||||||
#### 缓存架构
|
#### 缓存架构
|
||||||
|
|
||||||
@@ -536,9 +518,9 @@ graph TD
|
|||||||
|
|
||||||
项目支持多种文件存储方式(通过 `xtools-app-standalone` 可选配置):
|
项目支持多种文件存储方式(通过 `xtools-app-standalone` 可选配置):
|
||||||
|
|
||||||
| 存储方式 | 模块 | 说明 |
|
| 存储方式 | 模块 | 说明 |
|
||||||
|---------|------|------|
|
|------|----------------------------|--------------|
|
||||||
| S3存储 | `xtools-boot-storage-s3` | 兼容S3协议的对象存储 |
|
| S3存储 | `xtools-boot-storage-s3` | 兼容S3协议的对象存储 |
|
||||||
| 本地文件 | `xtools-boot-storage-file` | 本地文件系统存储(可选) |
|
| 本地文件 | `xtools-boot-storage-file` | 本地文件系统存储(可选) |
|
||||||
|
|
||||||
## 四、编码规范设计
|
## 四、编码规范设计
|
||||||
@@ -547,31 +529,31 @@ graph TD
|
|||||||
|
|
||||||
#### 类命名
|
#### 类命名
|
||||||
|
|
||||||
| 类型 | 命名规范 | 示例 |
|
| 类型 | 命名规范 | 示例 |
|
||||||
|------|----------|------|
|
|--------------|-------------------------------|----------------------------------|
|
||||||
| 实体类 | `Sys` + 模块名 | `SysUser`、`SysRole`、`SysMenu` |
|
| 实体类 | `Sys` + 模块名 | `SysUser`、`SysRole`、`SysMenu` |
|
||||||
| 请求DTO | 模块名 + `Req` | `SysUserAddReq`、`SysUserPageReq` |
|
| 请求DTO | 模块名 + `Req` | `SysUserAddReq`、`SysUserPageReq` |
|
||||||
| 响应DTO | 模块名 + `Resp` | `GenTableInfoResp` |
|
| 响应DTO | 模块名 + `Resp` | `GenTableInfoResp` |
|
||||||
| Excel DTO | 模块名 + `Excel` | `SysDictExcel` |
|
| Excel DTO | 模块名 + `Excel` | `SysDictExcel` |
|
||||||
| Service接口 | 模块名 + `Service` | `SysUserService` |
|
| Service接口 | 模块名 + `Service` | `SysUserService` |
|
||||||
| Service实现 | 模块名 + `ServiceImpl` | `SysUserServiceImpl` |
|
| Service实现 | 模块名 + `ServiceImpl` | `SysUserServiceImpl` |
|
||||||
| Base Service | 模块名 + `BaseService` | `SysUserBaseService` |
|
| Base Service | 模块名 + `BaseService` | `SysUserBaseService` |
|
||||||
| Controller | 模块名 + `Controller` | `SysUserController` |
|
| Controller | 模块名 + `Controller` | `SysUserController` |
|
||||||
| Mapper | 模块名 + `Mapper` | `SysUserMapper` |
|
| Mapper | 模块名 + `Mapper` | `SysUserMapper` |
|
||||||
| 转换器 | 模块名 + `Convert` | `SysUserConvert` |
|
| 转换器 | 模块名 + `Convert` | `SysUserConvert` |
|
||||||
| 工具类 | 功能名 + `Utils` | `PasswdUtils`、`AuthUtils` |
|
| 工具类 | 功能名 + `Utils` | `PasswdUtils`、`AuthUtils` |
|
||||||
| 配置类 | 功能名 + `Config` 或 `Properties` | `SysConfig`、`GenProperties` |
|
| 配置类 | 功能名 + `Config` 或 `Properties` | `SysConfig`、`GenProperties` |
|
||||||
|
|
||||||
#### 方法命名
|
#### 方法命名
|
||||||
|
|
||||||
| 操作 | 命名规范 | 示例 |
|
| 操作 | 命名规范 | 示例 |
|
||||||
|------|----------|------|
|
|------|-------------------------|------------------|
|
||||||
| 查询单个 | `getXxx` | `getUserInfo()` |
|
| 查询单个 | `getXxx` | `getUserInfo()` |
|
||||||
| 分页查询 | `pageXxx` | `pageSysUser()` |
|
| 分页查询 | `pageXxx` | `pageSysUser()` |
|
||||||
| 新增 | `addXxx` / `saveXxx` | `addSysUser()` |
|
| 新增 | `addXxx` / `saveXxx` | `addSysUser()` |
|
||||||
| 修改 | `updateXxx` / `editXxx` | `editUserInfo()` |
|
| 修改 | `updateXxx` / `editXxx` | `editUserInfo()` |
|
||||||
| 删除 | `delXxx` / `deleteXxx` | `delSysUser()` |
|
| 删除 | `delXxx` / `deleteXxx` | `delSysUser()` |
|
||||||
| 统计 | `countXxx` | — |
|
| 统计 | `countXxx` | — |
|
||||||
|
|
||||||
### 4.2 注释规范
|
### 4.2 注释规范
|
||||||
|
|
||||||
@@ -641,126 +623,126 @@ private static final String CLOUD_FLAG = String.valueOf(Boolean.TRUE);
|
|||||||
|
|
||||||
### 5.1 核心框架依赖
|
### 5.1 核心框架依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|-----------------------------|------------|-----------|
|
||||||
| Spring Boot | 4.0.5 | 应用框架 |
|
| Spring Boot | 4.0.5 | 应用框架 |
|
||||||
| Spring Framework | 7.0.6 | 核心框架 |
|
| Spring Framework | 7.0.6 | 核心框架 |
|
||||||
| Spring Cloud | 2025.1.1 | 微服务框架 |
|
| Spring Cloud | 2025.1.1 | 微服务框架 |
|
||||||
| Spring Cloud Alibaba | 2025.1.0.0 | 微服务组件 |
|
| Spring Cloud Alibaba | 2025.1.0.0 | 微服务组件 |
|
||||||
| Spring Data BOM | 2025.1.4 | 数据访问版本管理 |
|
| Spring Data BOM | 2025.1.4 | 数据访问版本管理 |
|
||||||
| MyBatis-Plus | 3.5.16 | ORM增强工具 |
|
| MyBatis-Plus | 3.5.16 | ORM增强工具 |
|
||||||
| MyBatis Spring Boot Starter | 4.0.1 | MyBatis集成 |
|
| MyBatis Spring Boot Starter | 4.0.1 | MyBatis集成 |
|
||||||
|
|
||||||
### 5.2 数据存储依赖
|
### 5.2 数据存储依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|----------------------|-----------------|-------------|
|
||||||
| Druid | 1.2.28 | 数据库连接池 |
|
| Druid | 1.2.28 | 数据库连接池 |
|
||||||
| MySQL Connector/J | 9.6.0 | MySQL数据库驱动 |
|
| MySQL Connector/J | 9.6.0 | MySQL数据库驱动 |
|
||||||
| Elasticsearch Client | 9.2.6 | ES搜索引擎客户端 |
|
| Elasticsearch Client | 9.2.6 | ES搜索引擎客户端 |
|
||||||
| Spring Data Redis | (Spring Boot管理) | Redis集成 |
|
| Spring Data Redis | (Spring Boot管理) | Redis集成 |
|
||||||
| Lettuce | 6.8.2 | Redis客户端 |
|
| Lettuce | 6.8.2 | Redis客户端 |
|
||||||
| Spring AMQP | 4.0.2 | RabbitMQ集成 |
|
| Spring AMQP | 4.0.2 | RabbitMQ集成 |
|
||||||
| RabbitMQ Client | 5.27.1 | RabbitMQ客户端 |
|
| RabbitMQ Client | 5.27.1 | RabbitMQ客户端 |
|
||||||
|
|
||||||
### 5.3 微服务相关依赖
|
### 5.3 微服务相关依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|--------------|-------|-----------|
|
||||||
| Nacos Client | 3.1.1 | 服务注册与配置中心 |
|
| Nacos Client | 3.1.1 | 服务注册与配置中心 |
|
||||||
| Sentinel | 1.8.9 | 流量控制与熔断降级 |
|
| Sentinel | 1.8.9 | 流量控制与熔断降级 |
|
||||||
| Seata | 2.5.0 | 分布式事务(可用) |
|
| Seata | 2.5.0 | 分布式事务(可用) |
|
||||||
| RocketMQ | 5.3.1 | 消息队列(可用) |
|
| RocketMQ | 5.3.1 | 消息队列(可用) |
|
||||||
|
|
||||||
### 5.4 工具库依赖
|
### 5.4 工具库依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|---------------|---------|------------|
|
||||||
| Lombok | 1.18.44 | 代码简化 |
|
| Lombok | 1.18.44 | 代码简化 |
|
||||||
| MapStruct | 1.6.3 | 对象映射 |
|
| MapStruct | 1.6.3 | 对象映射 |
|
||||||
| FastJSON2 | 2.0.60 | JSON处理 |
|
| FastJSON2 | 2.0.60 | JSON处理 |
|
||||||
| Velocity | 2.4.1 | 模板引擎(代码生成) |
|
| Velocity | 2.4.1 | 模板引擎(代码生成) |
|
||||||
| Jackson | 2.21.2 | JSON序列化 |
|
| Jackson | 2.21.2 | JSON序列化 |
|
||||||
| Commons Lang3 | 3.20.0 | 通用工具 |
|
| Commons Lang3 | 3.20.0 | 通用工具 |
|
||||||
| Commons IO | 2.21.0 | IO工具 |
|
| Commons IO | 2.21.0 | IO工具 |
|
||||||
| Commons Text | 1.15.0 | 文本处理 |
|
| Commons Text | 1.15.0 | 文本处理 |
|
||||||
| Caffeine | 3.2.3 | 本地缓存 |
|
| Caffeine | 3.2.3 | 本地缓存 |
|
||||||
|
|
||||||
### 5.5 安全相关依赖
|
### 5.5 安全相关依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|-------------------------------|-------|---------------|
|
||||||
| BouncyCastle (bcprov-jdk18on) | 1.84 | 国密算法(SM2/SM3) |
|
| BouncyCastle (bcprov-jdk18on) | 1.84 | 国密算法(SM2/SM3) |
|
||||||
| Easy Captcha | 1.6.2 | 验证码生成 |
|
| Easy Captcha | 1.6.2 | 验证码生成 |
|
||||||
| java-jwt | 4.5.1 | JWT令牌 |
|
| java-jwt | 4.5.1 | JWT令牌 |
|
||||||
|
|
||||||
### 5.6 文档相关依赖
|
### 5.6 文档相关依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|---------------------|--------|-----------|
|
||||||
| Knife4j | 4.5.0 | API文档增强 |
|
| Knife4j | 4.5.0 | API文档增强 |
|
||||||
| SpringDoc OpenAPI | 3.0.3 | OpenAPI文档 |
|
| SpringDoc OpenAPI | 3.0.3 | OpenAPI文档 |
|
||||||
| Swagger Annotations | 2.2.48 | API注解 |
|
| Swagger Annotations | 2.2.48 | API注解 |
|
||||||
|
|
||||||
### 5.7 系统监控依赖
|
### 5.7 系统监控依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|-------------------|--------|--------|
|
||||||
| Spring Boot Admin | 4.0.3 | 应用监控 |
|
| Spring Boot Admin | 4.0.3 | 应用监控 |
|
||||||
| OSHI Core | 6.11.1 | 系统信息采集 |
|
| OSHI Core | 6.11.1 | 系统信息采集 |
|
||||||
| Micrometer | 1.16.4 | 指标采集 |
|
| Micrometer | 1.16.4 | 指标采集 |
|
||||||
|
|
||||||
### 5.8 文件处理依赖
|
### 5.8 文件处理依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|---------------|------------------|-----------|
|
||||||
| Fesod Sheet | 2.0.1-incubating | Excel处理 |
|
| Fesod Sheet | 2.0.1-incubating | Excel处理 |
|
||||||
| PDFBox | 3.0.7 | PDF处理 |
|
| PDFBox | 3.0.7 | PDF处理 |
|
||||||
| Thumbnailator | 0.4.21 | 图片压缩 |
|
| Thumbnailator | 0.4.21 | 图片压缩 |
|
||||||
| S3 SDK | 2.42.34 | S3对象存储客户端 |
|
| S3 SDK | 2.42.34 | S3对象存储客户端 |
|
||||||
|
|
||||||
### 5.9 其他工具依赖
|
### 5.9 其他工具依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|----------------|--------|---------|
|
||||||
| XXL-Job Core | 3.4.0 | 分布式任务调度 |
|
| XXL-Job Core | 3.4.0 | 分布式任务调度 |
|
||||||
| IP2Region | 3.3.7 | IP归属地查询 |
|
| IP2Region | 3.3.7 | IP归属地查询 |
|
||||||
| UserAgentUtils | 1.21 | 浏览器标识解析 |
|
| UserAgentUtils | 1.21 | 浏览器标识解析 |
|
||||||
| Pinyin4j | 2.5.1 | 拼音转换 |
|
| Pinyin4j | 2.5.1 | 拼音转换 |
|
||||||
| ZXing | 3.5.4 | 二维码/条形码 |
|
| ZXing | 3.5.4 | 二维码/条形码 |
|
||||||
| JSoup | 1.22.1 | HTML解析 |
|
| JSoup | 1.22.1 | HTML解析 |
|
||||||
| MMSEG4J | 1.10.0 | 中文分词 |
|
| MMSEG4J | 1.10.0 | 中文分词 |
|
||||||
|
|
||||||
### 5.10 xtools 内部框架依赖
|
### 5.10 xtools 内部框架依赖
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|-------------------------------|-------|-----------------------|
|
||||||
| xtools-core | 5.0.0 | 核心工具库 |
|
| xtools-core | 5.0.0 | 核心工具库 |
|
||||||
| xtools-web | 5.0.0 | Web工具库 |
|
| xtools-web | 5.0.0 | Web工具库 |
|
||||||
| xtools-extend | 5.0.0 | 扩展工具库 |
|
| xtools-extend | 5.0.0 | 扩展工具库 |
|
||||||
| xtools-api | 5.0.0 | API基础库 |
|
| xtools-api | 5.0.0 | API基础库 |
|
||||||
| xtools-boot-api | 5.0.0 | Boot API基础(Result、异常) |
|
| xtools-boot-api | 5.0.0 | Boot API基础(Result、异常) |
|
||||||
| xtools-boot-core | 5.0.0 | Boot核心(Holder、工具) |
|
| xtools-boot-core | 5.0.0 | Boot核心(Holder、工具) |
|
||||||
| xtools-boot-cache-redis | 5.0.0 | Redis缓存封装 |
|
| xtools-boot-cache-redis | 5.0.0 | Redis缓存封装 |
|
||||||
| xtools-boot-db-mybatis-plus | 5.0.0 | MyBatis-Plus封装 |
|
| xtools-boot-db-mybatis-plus | 5.0.0 | MyBatis-Plus封装 |
|
||||||
| xtools-boot-elasticsearch | 5.0.0 | Elasticsearch封装 |
|
| xtools-boot-elasticsearch | 5.0.0 | Elasticsearch封装 |
|
||||||
| xtools-boot-ip | 5.0.0 | IP工具封装 |
|
| xtools-boot-ip | 5.0.0 | IP工具封装 |
|
||||||
| xtools-boot-knife4j | 5.0.0 | Knife4j封装 |
|
| xtools-boot-knife4j | 5.0.0 | Knife4j封装 |
|
||||||
| xtools-boot-log | 5.0.0 | 日志封装 |
|
| xtools-boot-log | 5.0.0 | 日志封装 |
|
||||||
| xtools-boot-mask | 5.0.0 | 数据脱敏封装 |
|
| xtools-boot-mask | 5.0.0 | 数据脱敏封装 |
|
||||||
| xtools-boot-mq-base | 5.0.0 | 消息队列基础 |
|
| xtools-boot-mq-base | 5.0.0 | 消息队列基础 |
|
||||||
| xtools-boot-mq-rabbit | 5.0.0 | RabbitMQ封装 |
|
| xtools-boot-mq-rabbit | 5.0.0 | RabbitMQ封装 |
|
||||||
| xtools-boot-storage-base | 5.0.0 | 存储基础 |
|
| xtools-boot-storage-base | 5.0.0 | 存储基础 |
|
||||||
| xtools-boot-storage-file | 5.0.0 | 本地文件存储 |
|
| xtools-boot-storage-file | 5.0.0 | 本地文件存储 |
|
||||||
| xtools-boot-storage-s3 | 5.0.0 | S3对象存储 |
|
| xtools-boot-storage-s3 | 5.0.0 | S3对象存储 |
|
||||||
| xtools-boot-task | 5.0.0 | 异步任务封装 |
|
| xtools-boot-task | 5.0.0 | 异步任务封装 |
|
||||||
| xtools-boot-thread | 5.0.0 | 线程池封装 |
|
| xtools-boot-thread | 5.0.0 | 线程池封装 |
|
||||||
| xtools-boot-web-base | 5.0.0 | Web基础 |
|
| xtools-boot-web-base | 5.0.0 | Web基础 |
|
||||||
| xtools-boot-web-filter | 5.0.0 | Web过滤器基础 |
|
| xtools-boot-web-filter | 5.0.0 | Web过滤器基础 |
|
||||||
| xtools-boot-job-xxl | 5.0.0 | XXL-Job集成 |
|
| xtools-boot-job-xxl | 5.0.0 | XXL-Job集成 |
|
||||||
| xtools-cloud-alibaba-nacos | 5.0.0 | Nacos集成 |
|
| xtools-cloud-alibaba-nacos | 5.0.0 | Nacos集成 |
|
||||||
| xtools-cloud-alibaba-sentinel | 5.0.0 | Sentinel集成 |
|
| xtools-cloud-alibaba-sentinel | 5.0.0 | Sentinel集成 |
|
||||||
| xtools-cloud-call | 5.0.0 | 微服务远程调用 |
|
| xtools-cloud-call | 5.0.0 | 微服务远程调用 |
|
||||||
|
|
||||||
## 六、技术选型说明
|
## 六、技术选型说明
|
||||||
|
|
||||||
@@ -843,25 +825,25 @@ private static final String CLOUD_FLAG = String.valueOf(Boolean.TRUE);
|
|||||||
|
|
||||||
### 6.9 其他重要依赖版本
|
### 6.9 其他重要依赖版本
|
||||||
|
|
||||||
| 依赖 | 版本 | 用途 |
|
| 依赖 | 版本 | 用途 |
|
||||||
|------|------|------|
|
|----------------------|------------------|-----------|
|
||||||
| Spring Cloud Alibaba | 2025.1.0.0 | 微服务框架 |
|
| Spring Cloud Alibaba | 2025.1.0.0 | 微服务框架 |
|
||||||
| Nacos | 3.1.1 | 服务注册与配置中心 |
|
| Nacos | 3.1.1 | 服务注册与配置中心 |
|
||||||
| Sentinel | 1.8.9 | 流量控制与熔断 |
|
| Sentinel | 1.8.9 | 流量控制与熔断 |
|
||||||
| FastJSON2 | 2.0.60 | JSON序列化 |
|
| FastJSON2 | 2.0.60 | JSON序列化 |
|
||||||
| Lombok | 1.18.44 | 代码简化 |
|
| Lombok | 1.18.44 | 代码简化 |
|
||||||
| MapStruct | 1.6.3 | 对象映射 |
|
| MapStruct | 1.6.3 | 对象映射 |
|
||||||
| Velocity | 2.4.1 | 模板引擎 |
|
| Velocity | 2.4.1 | 模板引擎 |
|
||||||
| Knife4j | 4.5.0 | API文档增强 |
|
| Knife4j | 4.5.0 | API文档增强 |
|
||||||
| BouncyCastle | 1.84 | 加密库 |
|
| BouncyCastle | 1.84 | 加密库 |
|
||||||
| OSHI | 6.11.1 | 系统监控 |
|
| OSHI | 6.11.1 | 系统监控 |
|
||||||
| Easy Captcha | 1.6.2 | 验证码生成 |
|
| Easy Captcha | 1.6.2 | 验证码生成 |
|
||||||
| Fesod Sheet | 2.0.1-incubating | Excel处理 |
|
| Fesod Sheet | 2.0.1-incubating | Excel处理 |
|
||||||
| Jackson | 2.21.2 | JSON处理 |
|
| Jackson | 2.21.2 | JSON处理 |
|
||||||
| Druid | 1.2.28 | 数据库连接池 |
|
| Druid | 1.2.28 | 数据库连接池 |
|
||||||
| Spring Boot Admin | 4.0.3 | 应用监控 |
|
| Spring Boot Admin | 4.0.3 | 应用监控 |
|
||||||
| java-jwt | 4.5.1 | JWT令牌 |
|
| java-jwt | 4.5.1 | JWT令牌 |
|
||||||
| XXL-Job | 3.4.0 | 分布式任务调度 |
|
| XXL-Job | 3.4.0 | 分布式任务调度 |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
|||||||
@@ -8,13 +8,15 @@
|
|||||||
REPLACE(sr.DATA, #{ip}, ''),
|
REPLACE(sr.DATA, #{ip}, ''),
|
||||||
#{ip}
|
#{ip}
|
||||||
)
|
)
|
||||||
WHERE sr.type = #{type} AND sr.sys_type = #{sysType}
|
WHERE sr.type = #{type}
|
||||||
|
AND sr.sys_type = #{sysType}
|
||||||
</update>
|
</update>
|
||||||
|
|
||||||
<!-- 移除IP -->
|
<!-- 移除IP -->
|
||||||
<update id="removeIp">
|
<update id="removeIp">
|
||||||
UPDATE sys_risk sr
|
UPDATE sys_risk sr
|
||||||
SET sr.DATA = REPLACE(sr.DATA, #{ip}, '')
|
SET sr.DATA = REPLACE(sr.DATA, #{ip}, '')
|
||||||
WHERE sr.type = #{type} AND sr.sys_type = #{sysType}
|
WHERE sr.type = #{type}
|
||||||
|
AND sr.sys_type = #{sysType}
|
||||||
</update>
|
</update>
|
||||||
</mapper>
|
</mapper>
|
||||||
Reference in New Issue
Block a user