Skip to content

Commit

Permalink
🎨 (desensitize) 修改部分类名和方法名,保持内部统一
Browse files Browse the repository at this point in the history
  • Loading branch information
Hccake committed Apr 12, 2024
1 parent a3be4eb commit 832e2ae
Show file tree
Hide file tree
Showing 6 changed files with 101 additions and 101 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,9 +36,9 @@
*
* @author evil0th Create on 2024/4/12
*/
public final class DesensitizedUtil {
public final class DesensitizationUtil {

private DesensitizedUtil() {
private DesensitizationUtil() {
}

/**
Expand All @@ -53,7 +53,7 @@ public static String maskChineseName(String input) {
if (invalidText(input)) {
return input;
}
return maskString(input, input.length() > 2 ? 1 : 0, 1);
return maskBySlide(input, input.length() > 2 ? 1 : 0, 1);
}

/**
Expand All @@ -63,7 +63,7 @@ public static String maskChineseName(String input) {
* @param input 待处理的文本
* @return 屏蔽后的文本
*/
public static String maskIdCard(String input) {
public static String maskIdCardNo(String input) {
if (invalidText(input)) {
return input;
}
Expand All @@ -78,7 +78,7 @@ public static String maskIdCard(String input) {
* @param input 待处理的文本
* @return 屏蔽后的文本
*/
public static String maskMobile(String input) {
public static String maskPhoneNumber(String input) {
if (invalidText(input)) {
return input;
}
Expand All @@ -97,7 +97,7 @@ public static String maskAddress(String input) {
if (invalidText(input)) {
return input;
}
return maskString(input, 6, 0);
return maskBySlide(input, 6, 0);
}

/**
Expand All @@ -107,7 +107,7 @@ public static String maskAddress(String input) {
* @param input 待处理的文本
* @return 屏蔽后的文本
*/
public static String maskMail(String input) {
public static String maskEmail(String input) {
if (invalidText(input)) {
return input;
}
Expand All @@ -122,7 +122,7 @@ public static String maskMail(String input) {
* @param input 待处理的文本
* @return 屏蔽后的文本
*/
public static String maskBankAccount(String input) {
public static String maskBankCardNo(String input) {
if (invalidText(input)) {
return input;
}
Expand Down Expand Up @@ -183,7 +183,7 @@ public static String maskKey(String input) {
}

/**
* 替换任意字符串
* 根据正则进行打码。
*
* <pre>
* DesensitizedUtil.maskString("[email protected]", RegexDesensitizationTypeEnum.EMAIL) = "t****@qq.com"
Expand All @@ -192,13 +192,13 @@ public static String maskKey(String input) {
* @param type {@link RegexDesensitizationTypeEnum}
* @return 屏蔽后的文本
*/
public static String maskString(String input, RegexDesensitizationTypeEnum type) {
public static String maskByRegex(String input, RegexDesensitizationTypeEnum type) {
RegexDesensitizationHandler regexHandler = DesensitizationHandlerHolder.getRegexDesensitizationHandler();
return regexHandler.handle(input, type);
}

/**
* 替换任意字符串
* 滑动打码。
*
* <pre>
* DesensitizedUtil.maskString("01089898976", SlideDesensitizationTypeEnum.PHONE_NUMBER) = "010******76"
Expand All @@ -207,12 +207,12 @@ public static String maskString(String input, RegexDesensitizationTypeEnum type)
* @param type {@link SlideDesensitizationTypeEnum}
* @return 屏蔽后的文本
*/
public static String maskString(String input, SlideDesensitizationTypeEnum type) {
return maskString(input, type, false);
public static String maskBySlide(String input, SlideDesensitizationTypeEnum type) {
return maskBySlide(input, type, false);
}

/**
* 替换任意字符串
* 滑动打码。
*
* <pre>
* DesensitizedUtil.maskString("01089898976", SlideDesensitizationTypeEnum.PHONE_NUMBER, true) = "***898989**"
Expand All @@ -222,13 +222,13 @@ public static String maskString(String input, SlideDesensitizationTypeEnum type)
* @param reverse 是否反转
* @return 屏蔽后的文本
*/
public static String maskString(String input, SlideDesensitizationTypeEnum type, boolean reverse) {
public static String maskBySlide(String input, SlideDesensitizationTypeEnum type, boolean reverse) {
SlideDesensitizationHandler slideHandler = DesensitizationHandlerHolder.getSlideDesensitizationHandler();
return slideHandler.handle(input, type, reverse);
}

/**
* 替换任意字符串
* 滑动打码。
*
* <pre>
* DesensitizedUtil.maskString("Hello World", 2, 3) = "He******rld"
Expand All @@ -238,12 +238,12 @@ public static String maskString(String input, SlideDesensitizationTypeEnum type,
* @param tail 尾部保留长度
* @return 屏蔽后的文本
*/
public static String maskString(String input, int head, int tail) {
return maskString(input, head, tail, false);
public static String maskBySlide(String input, int head, int tail) {
return maskBySlide(input, head, tail, false);
}

/**
* 替换任意字符串
* 滑动打码。
*
* <pre>
* DesensitizedUtil.maskString("Hello World", 2, 3) = "He******rld"
Expand All @@ -254,43 +254,43 @@ public static String maskString(String input, int head, int tail) {
* @param reverse 是否反转
* @return 屏蔽后的文本
*/
public static String maskString(String input, int head, int tail, boolean reverse) {
return maskString(input, head, tail, "*", reverse);
public static String maskBySlide(String input, int head, int tail, boolean reverse) {
return maskBySlide(input, head, tail, "*", reverse);
}

/**
* 替换任意字符串 <pre>
* 滑动打码。 <pre>
* DesensitizedUtil.maskString("Hello World", 2, 3, "#") = "He######rld"
* </pre>
* @param input 输入字符串
* @param head 头部保留长度
* @param tail 尾部保留长度
* @param replacement 替换结果字符
* @param maskString 替换结果字符
* @return 屏蔽后的文本
*/
public static String maskString(String input, int head, int tail, String replacement) {
return maskString(input, head, tail, replacement, false);
public static String maskBySlide(String input, int head, int tail, String maskString) {
return maskBySlide(input, head, tail, maskString, false);
}

/**
* 替换任意字符串 <pre>
* 滑动打码。 <pre>
* DesensitizedUtil.maskString("Hello World", 2, 3, "#") = "He######rld"
* </pre>
* @param input 输入字符串
* @param head 头部保留长度
* @param tail 尾部保留长度
* @param replacement 替换结果字符
* @param maskString 替换结果字符
* @return 屏蔽后的文本
*/
public static String maskString(String input, int head, int tail, String replacement, boolean reverse) {
public static String maskBySlide(String input, int head, int tail, String maskString, boolean reverse) {
if (invalidText(input)) {
return input;
}
if (head + tail >= input.length()) {
return input;
}
SlideDesensitizationHandler slideHandler = DesensitizationHandlerHolder.getSlideDesensitizationHandler();
return slideHandler.handle(input, head, tail, replacement, reverse);
return slideHandler.handle(input, head, tail, maskString, reverse);
}

/**
Expand All @@ -301,7 +301,7 @@ public static String maskString(String input, int head, int tail, String replace
* @param rule 规则。<br>
* @return 脱敏字符串
*/
public static String maskString(String input, String... rule) {
public static String maskByRule(String input, String... rule) {
final RuleDesensitizationHandler ruleHandler = DesensitizationHandlerHolder.getRuleDesensitizationHandler();
return ruleHandler.handle(input, rule);
}
Expand All @@ -315,7 +315,7 @@ public static String maskString(String input, String... rule) {
* @param reverse 是否反转规则
* @return 脱敏字符串
*/
public static String maskString(String input, boolean reverse, String... rule) {
public static String maskByRule(String input, boolean reverse, String... rule) {
final RuleDesensitizationHandler ruleHandler = DesensitizationHandlerHolder.getRuleDesensitizationHandler();
return ruleHandler.handle(input, reverse, rule);
}
Expand All @@ -331,7 +331,7 @@ public static String maskString(String input, boolean reverse, String... rule) {
* @param reverse 是否反转规则
* @return 脱敏字符串
*/
public static String maskString(String input, char symbol, boolean reverse, String... rule) {
public static String maskByRule(String input, char symbol, boolean reverse, String... rule) {
final RuleDesensitizationHandler ruleHandler = DesensitizationHandlerHolder.getRuleDesensitizationHandler();
return ruleHandler.handle(input, symbol, reverse, rule);
}
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
* @author Hccake 2021/1/23
*/
@Slf4j
class DesensitisedTest {
class DesensitizationTest {

@Test
void testSimple() {
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/*
* Copyright 2023-2024 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/

package org.ballcat.desensite;

import java.util.UUID;

import org.ballcat.desensitize.enums.RegexDesensitizationTypeEnum;
import org.ballcat.desensitize.enums.SlideDesensitizationTypeEnum;
import org.ballcat.desensitize.util.DesensitizationUtil;
import org.junit.jupiter.api.Test;

import static org.junit.jupiter.api.Assertions.assertEquals;

/**
* @author evil0th Create on 2024/4/12
*/
public class DesensitizationUtilTest {

@Test
public void test() {
assertEquals("t****@qq.com",
DesensitizationUtil.maskByRegex("[email protected]", RegexDesensitizationTypeEnum.EMAIL));
assertEquals("010******76",
DesensitizationUtil.maskBySlide("01089898976", SlideDesensitizationTypeEnum.PHONE_NUMBER));
assertEquals("***898989**",
DesensitizationUtil.maskBySlide("01089898976", SlideDesensitizationTypeEnum.PHONE_NUMBER, true));
assertEquals("430123******431", DesensitizationUtil.maskBySlide("430123990101431", 6, 3));
assertEquals("430123********432X", DesensitizationUtil.maskBySlide("43012319990101432X", 6, 4));
assertEquals("430123????????432X", DesensitizationUtil.maskBySlide("43012319990101432X", 6, 4, "?"));
assertEquals("张*丰", DesensitizationUtil.maskChineseName("张三丰"));
assertEquals("430123********432X", DesensitizationUtil.maskIdCardNo("43012319990101432X"));
assertEquals("138******78", DesensitizationUtil.maskPhoneNumber("13812345678"));
assertEquals("北京市西城区******", DesensitizationUtil.maskAddress("北京市西城区金城坊街2号"));
assertEquals("t****@qq.com", DesensitizationUtil.maskEmail("[email protected]"));
assertEquals("622260**********1234", DesensitizationUtil.maskBankCardNo("62226000000043211234"));
assertEquals("******", DesensitizationUtil.maskPassword(UUID.randomUUID().toString()));
assertEquals("000****34", DesensitizationUtil.maskKey("0000000123456q34"));
assertEquals("192.*.*.*", DesensitizationUtil.maskIP("192.168.2.1"));
assertEquals("2001:*:*:*:*:*:*:*", DesensitizationUtil.maskIP("2001:0db8:02de:0000:0000:0000:0000:0e13"));
assertEquals("2001:*:*:*:*:*:*:*", DesensitizationUtil.maskIP("2001:db8:2de:0:0:0:0:e13"));
assertEquals("4*01***99*********", DesensitizationUtil.maskByRule("43012319990101432X", "1", "4-6", "9-"));
assertEquals("4-01---99---------",
DesensitizationUtil.maskByRule("43012319990101432X", '-', false, "1", "4-6", "9-"));
assertEquals("-3--231--90101432X",
DesensitizationUtil.maskByRule("43012319990101432X", '-', true, "1", "4-6", "9-"));
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@

import org.ballcat.desensitize.handler.DesensitizationHandler;

public class CustomDesensitisedHandler implements DesensitizationHandler {
public class CustomDesensitizationHandler implements DesensitizationHandler {

public String handle(String text) {
return "customer rule" + text;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
*
*/
@Slf4j
class CustomDesensitisedTest {
class CustomDesensitizationTest {

@Test
void desensitizedExtend() throws Exception {
Expand All @@ -40,15 +40,15 @@ void desensitizedExtend() throws Exception {
ObjectMapper objectMapper = new ObjectMapper();

// 注册自定义脱敏类型处理器
CustomDesensitisedHandler customDesensitisedHandler = new CustomDesensitisedHandler();
DesensitizationHandlerHolder.addHandler(CustomDesensitisedHandler.class, customDesensitisedHandler);
CustomDesensitizationHandler customDesensitizationHandler = new CustomDesensitizationHandler();
DesensitizationHandlerHolder.addHandler(CustomDesensitizationHandler.class, customDesensitizationHandler);
// 注册注解 处理器
AnnotationHandlerHolder.addHandleFunction(CustomerDesensitize.class, (annotation, value) -> {
CustomerDesensitize customerDesensitize = (CustomerDesensitize) annotation;
String type = customerDesensitize.type();
log.info("注解上的参数:{}", type);
CustomDesensitisedHandler handler = (CustomDesensitisedHandler) DesensitizationHandlerHolder
.getHandler(CustomDesensitisedHandler.class);
CustomDesensitizationHandler handler = (CustomDesensitizationHandler) DesensitizationHandlerHolder
.getHandler(CustomDesensitizationHandler.class);
return handler.handle(value);
});
// 初始化序列号modifier
Expand Down

0 comments on commit 832e2ae

Please sign in to comment.