Commit 0e07da807a266cf98af18ea4c98023f7e66904d6

Authored by YunaiV
2 parents 295fad7d a78e5369

Merge branch 'master-jdk17' of https://github.com/YunaiV/ruoyi-vue-pro into master-jdk17

yudao-framework/yudao-spring-boot-starter-web/src/main/java/cn/iocoder/yudao/framework/desensitize/core/slider/handler/AbstractSliderDesensitizationHandler.java
@@ -26,19 +26,14 @@ public abstract class AbstractSliderDesensitizationHandler<T extends Annotation> @@ -26,19 +26,14 @@ public abstract class AbstractSliderDesensitizationHandler<T extends Annotation>
26 int suffixKeep = getSuffixKeep(annotation); 26 int suffixKeep = getSuffixKeep(annotation);
27 String replacer = getReplacer(annotation); 27 String replacer = getReplacer(annotation);
28 int length = origin.length(); 28 int length = origin.length();
  29 + int interval = length - prefixKeep - suffixKeep;
29 30
30 - // 情况一:原始字符串长度小于等于保留长度,则原始字符串全部替换  
31 - if (prefixKeep >= length || suffixKeep >= length) {  
32 - return buildReplacerByLength(replacer, length);  
33 - }  
34 -  
35 - // 情况二:原始字符串长度小于等于前后缀保留字符串长度,则原始字符串全部替换  
36 - if ((prefixKeep + suffixKeep) >= length) { 31 + // 情况一:原始字符串长度小于等于前后缀保留字符串长度,则原始字符串全部替换
  32 + if (interval <= 0) {
37 return buildReplacerByLength(replacer, length); 33 return buildReplacerByLength(replacer, length);
38 } 34 }
39 35
40 - // 情况三:原始字符串长度大于前后缀保留字符串长度,则替换中间字符串  
41 - int interval = length - prefixKeep - suffixKeep; 36 + // 情况二:原始字符串长度大于前后缀保留字符串长度,则替换中间字符串
42 return origin.substring(0, prefixKeep) + 37 return origin.substring(0, prefixKeep) +
43 buildReplacerByLength(replacer, interval) + 38 buildReplacerByLength(replacer, interval) +
44 origin.substring(prefixKeep + interval); 39 origin.substring(prefixKeep + interval);
@@ -52,11 +47,7 @@ public abstract class AbstractSliderDesensitizationHandler&lt;T extends Annotation&gt; @@ -52,11 +47,7 @@ public abstract class AbstractSliderDesensitizationHandler&lt;T extends Annotation&gt;
52 * @return 构建后的替换符 47 * @return 构建后的替换符
53 */ 48 */
54 private String buildReplacerByLength(String replacer, int length) { 49 private String buildReplacerByLength(String replacer, int length) {
55 - StringBuilder builder = new StringBuilder();  
56 - for (int i = 0; i < length; i++) {  
57 - builder.append(replacer);  
58 - }  
59 - return builder.toString(); 50 + return replacer.repeat(length);
60 } 51 }
61 52
62 /** 53 /**