SensitiveInfoUtils.java
import org.apache.commons.lang3.StringUtils;
import java.util.Objects;
/**
* 数据脱敏工具类
*
* @Author: Neo
* @Date: 2020/8/19 16:21
* @Version: 1.0
*/
public class SensitiveInfoUtils {
/**
* 默认填充字符
*/
public static final String DEFAULT_PAD_STR = "*";
/**
* 数据脱敏
* 当字符创为空串或字符串长度小于等于 2 时,直接返回
* 当【字符串总长度】减 {@code leftLen} 减 {@code rightLen} 小于等于 【字符串总长度】的三分之一时,则左右各展示【字符串总长度】的三分之一
*
* @param data 需要脱敏的数据
* @param leftLen 左边展示几位
* @param rightLen 右边展示几位
* @param padStr 填充字符串,如果长度为 1, 则按位填充;否则否则直接填充,可用于颜文字填充场景
* @return
*/
public static String process(String data, Integer leftLen, Integer rightLen, String padStr) {
int length = StringUtils.length<