常用工具类--- 脱敏工具

本文涉及的产品
注册配置 MSE Nacos/ZooKeeper,118元/月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
性能测试 PTS,5000VUM额度
简介: 几个项目中常用的脱敏方法 现拿现用,方便快捷,旨在助力每位cv工程师的一生cv梦~~~

身份证脱敏

public static String hideIdNo(String realNo) {
    if (realNo == null) {
        return null;
    }
    String newNo = "";
    if (realNo.length() == 15) {
        newNo = realNo.replaceAll("(\\d{4})\\d{7}(\\d{4})", "$1*******$2");
    }
    if (realNo.length() == 18) {
        newNo = realNo.replaceAll("(\\d{4})\\d{10}(\\d{4})", "$1**********$2");
    }
    return newNo;
}

姓名脱敏

public static String hideName(String realname) {
    if (realname == null) {
        return null;
    }
    char[] r = realname.toCharArray();
    String name = "";
    if (r.length == 1) {
        name = realname;
    }
    if (r.length == 2) {
        name = realname.replaceFirst(realname.substring(1), "*");
    }
    if (r.length > 2) {
        name = realname.replaceFirst(realname.substring(1, r.length - 1), "*");
    }
    return name;
}

手机号脱敏

public static String hidePhone(String realPhone) {
    if (realPhone == null) {
        return null;
    }
    String phoneNumber;
    if (realPhone.length() == 11) {
        phoneNumber = realPhone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
    } else {
        phoneNumber = realPhone;
    }
    return phoneNumber;
}
相关文章
|
7月前
|
存储 数据库
Public CMS二次开发过程,如何使用多个数据源
Public CMS二次开发过程,如何使用多个数据源
45 2
|
2月前
|
安全 算法 Java
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
本文提供了在数据库中对密码等敏感信息进行加盐加密的详细教程,包括手写MD5加密算法和使用Spring Security的BCryptPasswordEncoder进行加密,并强调了使用BCryptPasswordEncoder时需要注意的Spring Security配置问题。
152 0
数据库信息/密码加盐加密 —— Java代码手写+集成两种方式,手把手教学!保证能用!
|
5月前
|
存储 安全 算法
Java中的数据脱敏与隐私保护技术
Java中的数据脱敏与隐私保护技术
|
5月前
|
XML Java 数据格式
支付系统----微信支付20---创建案例项目--集成Mybatis-plus的补充,target下只有接口的编译文件,xml文件了,添加日志的写法
支付系统----微信支付20---创建案例项目--集成Mybatis-plus的补充,target下只有接口的编译文件,xml文件了,添加日志的写法
|
7月前
|
SQL 算法
基于若依的ruoyi-nbcio流程管理系统修改代码生成的sql菜单id修改成递增id(谨慎修改,大并发分布式有弊端)
基于若依的ruoyi-nbcio流程管理系统修改代码生成的sql菜单id修改成递增id(谨慎修改,大并发分布式有弊端)
101 1
|
SQL Java 数据库连接
求求你别乱脱敏了!MyBatis 插件 + 注解轻松实现数据脱敏,So easy~!
求求你别乱脱敏了!MyBatis 插件 + 注解轻松实现数据脱敏,So easy~!
763 0
|
7月前
|
Oracle Java 关系型数据库
Generator【SpringBoot集成】代码生成+knife4j接口文档(2种模板设置、逻辑删除、字段填充 含代码粘贴可用)保姆级教程(注意事项+建表SQL+代码生成类封装+测试类)
Generator【SpringBoot集成】代码生成+knife4j接口文档(2种模板设置、逻辑删除、字段填充 含代码粘贴可用)保姆级教程(注意事项+建表SQL+代码生成类封装+测试类)
120 0
|
7月前
|
SQL 数据采集 Java
Java【代码分享 02】商品全部分类数据获取(建表语句+Jar包依赖+树结构封装+获取及解析源代码)包含csv和sql格式数据下载可用
Java【代码分享 02】商品全部分类数据获取(建表语句+Jar包依赖+树结构封装+获取及解析源代码)包含csv和sql格式数据下载可用
79 0
|
人工智能 Java easyexcel
【工具篇】java导出excel工具类,多种模式自动配置,绝对值得你收藏
【工具篇】java导出excel工具类,多种模式自动配置,绝对值得你收藏
600 0
|
JSON JavaScript 前端开发
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)
有些 post 的请求参数是 json 格式的,这个前面发送post 请求里面提到过,需要导入 json模块处理。现在企业公司一般常见的接口因为json数据容易处理,所以绝大多数返回数据也是 json 格式的,我们在做判断时候,往往只需要提取其中 几个关键的参数就行,这时候我们就需要 json 来解析返回的数据了。首先来说一下笔者为何要单独写这么一篇,原因是:python 里面 bool 值是 True 和 False,json 里面 bool 值是 true和 false,并且区分大小写,这就尴尬了,明明都是 bool 值。
251 1
python接口自动化(十七)--Json 数据处理---一次爬坑记(详解)