Annotation Interface Desensitize
数据脱敏注解
标记在字段上,JSON序列化时自动脱敏
主要功能: 1. 支持多种脱敏类型(手机号、身份证、邮箱、银行卡等) 2. 支持自定义脱敏规则 3. 自动在JSON序列化时应用脱敏
使用示例:
public class UserDTO {
@Desensitize(type = DesensitizeType.MOBILE)
private String mobile; // 138****1234
@Desensitize(type = DesensitizeType.ID_CARD)
private String idCard; // 110**********123
@Desensitize(type = DesensitizeType.EMAIL)
private String email; // k***@example.com
@Desensitize(type = DesensitizeType.CUSTOM, prefixKeep = 3, suffixKeep = 2, replacer = '#')
private String custom; // abc###xyz
}
- Author:
- Kerbores(kerbores@riemann.tech)
-
Required Element Summary
Required Elements -
Optional Element Summary
Optional ElementsModifier and TypeOptional ElementDescriptionint自定义脱敏:前缀保留字符数char自定义脱敏:替换字符int自定义脱敏:后缀保留字符数
-
Element Details
-
type
-
prefixKeep
int prefixKeep自定义脱敏:前缀保留字符数仅在type=CUSTOM时生效
- Returns:
- 前缀保留字符数,默认0
- Default:
0
-
suffixKeep
int suffixKeep自定义脱敏:后缀保留字符数仅在type=CUSTOM时生效
- Returns:
- 后缀保留字符数,默认0
- Default:
0
-
replacer
char replacer自定义脱敏:替换字符仅在type=CUSTOM时生效
- Returns:
- 替换字符,默认*
- Default:
'*'
-