用代码实现给手机号、身份证号等隐私信息加密展示或传输
1、首先导入pom文件,添加依赖
<dependency>
<groupId>cn.stylefeng.roses</groupId>
<artifactId>kernel-core</artifactId>
<version>1.2.2</version>
<exclusions>
<exclusion>
<artifactId>mysql-connector-java</artifactId>
<groupId>mysql</groupId>
</exclusion>
</exclusions>
</dependency>
2、完整代码如下:
public static void main(String[] args) {
String mobile = "13390902100";
//输出加密后的手机号
System.out.println("加密前手机号:" + mobile );
System.out.println("加密后手机号:" + desensitizationMobile(mobile));
String idCard = "310211200010220972";
//输出加密后的身份证号
System.out.println("加密前手机号:" + idCard);
System.out.println("加密后身份证号:" + desensitizationVIN(idCard));
}
/**
* 手机号中间四位脱敏加密
* @param mobile
* @return
*/
public static String desensitizationMobile(String mobile) {
if (ToolUtil.isEmpty(mobile)) {
return mobile;
}
return mobile.replaceAll("(\\w{3})\\w*(\\w{4})", "$1****$2");
}
/**
* 身份证号后五位数脱敏
* @param vin
* @return
*/
public static String desensitizationVIN(String vin) {
if (ToolUtil.isEmpty(vin)) {
return vin;
}
return vin.replaceAll("(\\w{12})\\w*", "$1*****");
}
3、最新结果如下,其他敏感字段同样可以用这个方法

966

被折叠的 条评论
为什么被折叠?



