自研云框架专题–Web模块(三)
-
项目特点
-
一:框架集成
-
1.引入核心依赖
-
添加核心依赖项
-
需要通过Maven Central仓库或mvn工具获取最新版本
-
2.配置相关功能
-
配置全局功能
-
配置路径前缀
-
配置安全配置
-
二:功能介绍
-
1.Swagger支持并提供快速配置
-
Swagger配置方法
-
WebConfig配置方法
-
示例代码
-
2.Knife增强Swagger支持
-
简单配置方法
-
示例界面
-
3.全局请求参数校验
-
校验功能使用方法
-
示例代码
-
4.字段脱敏支持
-
单向脱敏方法
-
双向脱敏方法
-
示例代码
-
5.默认Jackson序列化
-
Jackson序列化功能
-
示例代码
-
6.XSS和CORS支持
-
配置方法
-
示例代码
-
7.访问日志支持
-
日志记录方法
-
示例代码
-
8.全局异常处理
-
异常处理方法
-
9.关键信息显示
-
显示功能方法
开源地址:https://github.com/2892824942/ty-cloud/blob/main/ty_framework/ty_framework-service
项目特点
- 自动集成Spring-Bootstrap-Web模块
- Swagger支持并提供快速配置
- Knife增强Swagger功能
- 全局请求参数校验支持
- 字段脱敏支持
- 默认Jackson序列化
- XSS和CORS支持
- 访问日志支持
- 全局异常处理支持
- 显示关键和常用信息
一:框架集成
1.引入核心依赖
依赖信息如下:
com.ty ty-framework-web-start ${最新版本}
2.配置相关功能
配置示例: framework: web: custom-api: core: prefix: /core controller: '.web.' other: prefix: / controller: '**'
xss: enable: true exclude-urls: "/test/","/ops/"
cors: enable: true
3.全局请求参数校验
校验功能配置方法: @InEnum、@Mobile、@Telephone注解使用方法 示例代码:
// 实体类中标记
public class AddrVO implements BaseIdDO<Long> {
private static final long serialVersionUID = 1L;
@Schema(description = "id")
@HashedId
private Long id;
}
4.字段脱敏支持
单向脱敏示例: 银行卡、手机号、身份证号等
双向脱敏示例: @HashedId注解使用方法
5.默认Jackson序列化
序列化功能配置方法: 数值超过2^53-1时的精度问题解决 日期格式兼容性问题解决
6.XSS和CORS支持
配置方法示例:
framework:
xss:
enable: true
exclude-urls: "/test/**","/ops/**"
enable-cors: true
7.访问日志支持
日志记录方法: 使用@ApiAccessLogEvent和@ApiErrorLogEvent进行日志监听
8.全局异常处理
异常处理方法: 使用BaseResult和GlobalExceptionHandler进行统一处理
9.关键信息显示
显示功能配置: 使用特定组件进行关键信息展示

更详细的使用案例,见:https://github.com/2892824942/framework-demo