注意:hutool依赖需使用5.6以上版本,才会有DesensitizedUtil类
1、功能
-
用户ID:默认返回0,数据类型为long类型。
-
中文姓名:默认返回姓氏,即只返回姓名的第一个字,其他信息隐藏,数据类型为String类型。
-
身份证号:需要传递三个参数:身份证号码、首部需要显示的号码数量(从1开始)、尾部需要显示的号码数量(从1开始),数据返回类型为String类型。
-
座机号:前四位和后两位显示,其他部分隐藏,返回数据类型为String类型。
-
手机号:前三位和后四位显示,其他部分隐藏,返回数据类型为String类型。
-
地址:只显示到地区,不显示详细地址,其他部分隐藏,可以设置敏感信息长度,返回数据类型为String类型。
-
电子邮件:只显示部分邮箱地址,其他部分隐藏,返回数据类型为String类型。
-
密码:隐藏整个密码,只返回相同长度的星号(*),返回数据类型为String类型。
-
中国大陆车牌:包括普通车辆和新能源车辆的车牌号脱敏,具体脱敏规则可能因实际需求而异。
-
银行卡号:隐藏银行卡号中的大部分数字,只显示部分首尾数字,返回数据类型为String类型。
此外,DesensitizedUtil
还提供了自定义脱敏的功能,允许开发者根据实际需求定义自己的脱敏规则。
2、使用举例
//手机号 182****9991
String mobilePhone = DesensitizedUtil.mobilePhone("18299999991");
//身份证号 34*************725
String idCardNum = DesensitizedUtil.idCardNum("341225199512138725", 2, 3);
//密码 ******
String password = DesensitizedUtil.password("123456");
//地址 安徽省合肥市蜀山*****
String address = DesensitizedUtil.address("安徽省合肥市蜀山区保利小区", 5);
//自定义脱敏 密码自定义 ******
String desensitized = DesensitizedUtil.desensitized("111111",PASSWORD);