From 651867055c3fbb432ce483a7abc626195cefa518 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子li <15040126243@163.com>
Date: 星期五, 28 一月 2022 11:03:31 +0800
Subject: [PATCH] update 修改用户注册报未登录警告
---
ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java | 460 ++++++++++-----------------------------------------------
1 files changed, 80 insertions(+), 380 deletions(-)
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java
index 4ca2bfc..77a484e 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/StringUtils.java
@@ -1,243 +1,83 @@
package com.ruoyi.common.utils;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.lang.Validator;
+import cn.hutool.core.util.StrUtil;
+import lombok.AccessLevel;
+import lombok.NoArgsConstructor;
+import org.springframework.util.AntPathMatcher;
+
import java.util.ArrayList;
-import java.util.Collection;
import java.util.HashSet;
import java.util.List;
-import java.util.Map;
import java.util.Set;
-import org.springframework.util.AntPathMatcher;
-import com.ruoyi.common.constant.Constants;
-import com.ruoyi.common.core.text.StrFormatter;
/**
* 瀛楃涓插伐鍏风被
- *
- * @author ruoyi
+ *
+ * @author Lion Li
*/
-public class StringUtils extends org.apache.commons.lang3.StringUtils
-{
- /** 绌哄瓧绗︿覆 */
- private static final String NULLSTR = "";
-
- /** 涓嬪垝绾� */
- private static final char SEPARATOR = '_';
+@NoArgsConstructor(access = AccessLevel.PRIVATE)
+public class StringUtils extends org.apache.commons.lang3.StringUtils {
/**
* 鑾峰彇鍙傛暟涓嶄负绌哄��
- *
- * @param value defaultValue 瑕佸垽鏂殑value
+ *
+ * @param str defaultValue 瑕佸垽鏂殑value
* @return value 杩斿洖鍊�
*/
- public static <T> T nvl(T value, T defaultValue)
- {
- return value != null ? value : defaultValue;
- }
-
- /**
- * * 鍒ゆ柇涓�涓狢ollection鏄惁涓虹┖锛� 鍖呭惈List锛孲et锛孮ueue
- *
- * @param coll 瑕佸垽鏂殑Collection
- * @return true锛氫负绌� false锛氶潪绌�
- */
- public static boolean isEmpty(Collection<?> coll)
- {
- return isNull(coll) || coll.isEmpty();
- }
-
- /**
- * * 鍒ゆ柇涓�涓狢ollection鏄惁闈炵┖锛屽寘鍚獿ist锛孲et锛孮ueue
- *
- * @param coll 瑕佸垽鏂殑Collection
- * @return true锛氶潪绌� false锛氱┖
- */
- public static boolean isNotEmpty(Collection<?> coll)
- {
- return !isEmpty(coll);
- }
-
- /**
- * * 鍒ゆ柇涓�涓璞℃暟缁勬槸鍚︿负绌�
- *
- * @param objects 瑕佸垽鏂殑瀵硅薄鏁扮粍
- ** @return true锛氫负绌� false锛氶潪绌�
- */
- public static boolean isEmpty(Object[] objects)
- {
- return isNull(objects) || (objects.length == 0);
- }
-
- /**
- * * 鍒ゆ柇涓�涓璞℃暟缁勬槸鍚﹂潪绌�
- *
- * @param objects 瑕佸垽鏂殑瀵硅薄鏁扮粍
- * @return true锛氶潪绌� false锛氱┖
- */
- public static boolean isNotEmpty(Object[] objects)
- {
- return !isEmpty(objects);
- }
-
- /**
- * * 鍒ゆ柇涓�涓狹ap鏄惁涓虹┖
- *
- * @param map 瑕佸垽鏂殑Map
- * @return true锛氫负绌� false锛氶潪绌�
- */
- public static boolean isEmpty(Map<?, ?> map)
- {
- return isNull(map) || map.isEmpty();
- }
-
- /**
- * * 鍒ゆ柇涓�涓狹ap鏄惁涓虹┖
- *
- * @param map 瑕佸垽鏂殑Map
- * @return true锛氶潪绌� false锛氱┖
- */
- public static boolean isNotEmpty(Map<?, ?> map)
- {
- return !isEmpty(map);
+ public static String blankToDefault(String str, String defaultValue) {
+ return StrUtil.blankToDefault(str, defaultValue);
}
/**
* * 鍒ゆ柇涓�涓瓧绗︿覆鏄惁涓虹┖涓�
- *
+ *
* @param str String
* @return true锛氫负绌� false锛氶潪绌�
*/
- public static boolean isEmpty(String str)
- {
- return isNull(str) || NULLSTR.equals(str.trim());
+ public static boolean isEmpty(String str) {
+ return StrUtil.isEmpty(str);
}
/**
* * 鍒ゆ柇涓�涓瓧绗︿覆鏄惁涓洪潪绌轰覆
- *
+ *
* @param str String
* @return true锛氶潪绌轰覆 false锛氱┖涓�
*/
- public static boolean isNotEmpty(String str)
- {
+ public static boolean isNotEmpty(String str) {
return !isEmpty(str);
- }
-
- /**
- * * 鍒ゆ柇涓�涓璞℃槸鍚︿负绌�
- *
- * @param object Object
- * @return true锛氫负绌� false锛氶潪绌�
- */
- public static boolean isNull(Object object)
- {
- return object == null;
- }
-
- /**
- * * 鍒ゆ柇涓�涓璞℃槸鍚﹂潪绌�
- *
- * @param object Object
- * @return true锛氶潪绌� false锛氱┖
- */
- public static boolean isNotNull(Object object)
- {
- return !isNull(object);
- }
-
- /**
- * * 鍒ゆ柇涓�涓璞℃槸鍚︽槸鏁扮粍绫诲瀷锛圝ava鍩烘湰鍨嬪埆鐨勬暟缁勶級
- *
- * @param object 瀵硅薄
- * @return true锛氭槸鏁扮粍 false锛氫笉鏄暟缁�
- */
- public static boolean isArray(Object object)
- {
- return isNotNull(object) && object.getClass().isArray();
}
/**
* 鍘荤┖鏍�
*/
- public static String trim(String str)
- {
- return (str == null ? "" : str.trim());
+ public static String trim(String str) {
+ return StrUtil.trim(str);
}
/**
* 鎴彇瀛楃涓�
- *
- * @param str 瀛楃涓�
+ *
+ * @param str 瀛楃涓�
* @param start 寮�濮�
* @return 缁撴灉
*/
- public static String substring(final String str, int start)
- {
- if (str == null)
- {
- return NULLSTR;
- }
-
- if (start < 0)
- {
- start = str.length() + start;
- }
-
- if (start < 0)
- {
- start = 0;
- }
- if (start > str.length())
- {
- return NULLSTR;
- }
-
- return str.substring(start);
+ public static String substring(final String str, int start) {
+ return substring(str, start, str.length());
}
/**
* 鎴彇瀛楃涓�
- *
- * @param str 瀛楃涓�
+ *
+ * @param str 瀛楃涓�
* @param start 寮�濮�
- * @param end 缁撴潫
+ * @param end 缁撴潫
* @return 缁撴灉
*/
- public static String substring(final String str, int start, int end)
- {
- if (str == null)
- {
- return NULLSTR;
- }
-
- if (end < 0)
- {
- end = str.length() + end;
- }
- if (start < 0)
- {
- start = str.length() + start;
- }
-
- if (end > str.length())
- {
- end = str.length();
- }
-
- if (start > end)
- {
- return NULLSTR;
- }
-
- if (start < 0)
- {
- start = 0;
- }
- if (end < 0)
- {
- end = 0;
- }
-
- return str.substring(start, end);
+ public static String substring(final String str, int start, int end) {
+ return StrUtil.sub(str, start, end);
}
/**
@@ -248,75 +88,62 @@
* 閫氬父浣跨敤锛歠ormat("this is {} for {}", "a", "b") -> this is a for b<br>
* 杞箟{}锛� format("this is \\{} for {}", "a", "b") -> this is \{} for a<br>
* 杞箟\锛� format("this is \\\\{} for {}", "a", "b") -> this is \a for b<br>
- *
+ *
* @param template 鏂囨湰妯℃澘锛岃鏇挎崲鐨勯儴鍒嗙敤 {} 琛ㄧず
- * @param params 鍙傛暟鍊�
+ * @param params 鍙傛暟鍊�
* @return 鏍煎紡鍖栧悗鐨勬枃鏈�
*/
- public static String format(String template, Object... params)
- {
- if (isEmpty(params) || isEmpty(template))
- {
- return template;
- }
- return StrFormatter.format(template, params);
+ public static String format(String template, Object... params) {
+ return StrUtil.format(template, params);
}
/**
* 鏄惁涓篽ttp(s)://寮�澶�
- *
+ *
* @param link 閾炬帴
* @return 缁撴灉
*/
- public static boolean ishttp(String link)
- {
- return StringUtils.startsWithAny(link, Constants.HTTP, Constants.HTTPS);
+ public static boolean ishttp(String link) {
+ return Validator.isUrl(link);
}
/**
* 瀛楃涓茶浆set
- *
+ *
* @param str 瀛楃涓�
* @param sep 鍒嗛殧绗�
* @return set闆嗗悎
*/
- public static final Set<String> str2Set(String str, String sep)
- {
- return new HashSet<String>(str2List(str, sep, true, false));
+ public static Set<String> str2Set(String str, String sep) {
+ return new HashSet<>(str2List(str, sep, true, false));
}
/**
* 瀛楃涓茶浆list
- *
- * @param str 瀛楃涓�
- * @param sep 鍒嗛殧绗�
+ *
+ * @param str 瀛楃涓�
+ * @param sep 鍒嗛殧绗�
* @param filterBlank 杩囨护绾┖鐧�
- * @param trim 鍘绘帀棣栧熬绌虹櫧
+ * @param trim 鍘绘帀棣栧熬绌虹櫧
* @return list闆嗗悎
*/
- public static final List<String> str2List(String str, String sep, boolean filterBlank, boolean trim)
- {
- List<String> list = new ArrayList<String>();
- if (StringUtils.isEmpty(str))
- {
+ public static List<String> str2List(String str, String sep, boolean filterBlank, boolean trim) {
+ List<String> list = new ArrayList<>();
+ if (isEmpty(str)) {
return list;
}
// 杩囨护绌虹櫧瀛楃涓�
- if (filterBlank && StringUtils.isBlank(str))
- {
+ if (filterBlank && isBlank(str)) {
return list;
}
String[] split = str.split(sep);
- for (String string : split)
- {
- if (filterBlank && StringUtils.isBlank(string))
- {
+ for (String string : split) {
+ if (filterBlank && isBlank(string)) {
continue;
}
- if (trim)
- {
- string = string.trim();
+ if (trim) {
+ string = trim(string);
}
list.add(string);
}
@@ -327,183 +154,62 @@
/**
* 鏌ユ壘鎸囧畾瀛楃涓叉槸鍚﹀寘鍚寚瀹氬瓧绗︿覆鍒楄〃涓殑浠绘剰涓�涓瓧绗︿覆鍚屾椂涓插拷鐣ュぇ灏忓啓
*
- * @param cs 鎸囧畾瀛楃涓�
+ * @param cs 鎸囧畾瀛楃涓�
* @param searchCharSequences 闇�瑕佹鏌ョ殑瀛楃涓叉暟缁�
* @return 鏄惁鍖呭惈浠绘剰涓�涓瓧绗︿覆
*/
- public static boolean containsAnyIgnoreCase(CharSequence cs, CharSequence... searchCharSequences)
- {
- if (isEmpty(cs) || isEmpty(searchCharSequences))
- {
- return false;
- }
- for (CharSequence testStr : searchCharSequences)
- {
- if (containsIgnoreCase(cs, testStr))
- {
- return true;
- }
- }
- return false;
+ public static boolean containsAnyIgnoreCase(CharSequence cs, CharSequence... searchCharSequences) {
+ return StrUtil.containsAnyIgnoreCase(cs, searchCharSequences);
}
/**
* 椹煎嘲杞笅鍒掔嚎鍛藉悕
*/
- public static String toUnderScoreCase(String str)
- {
- if (str == null)
- {
- return null;
- }
- StringBuilder sb = new StringBuilder();
- // 鍓嶇疆瀛楃鏄惁澶у啓
- boolean preCharIsUpperCase = true;
- // 褰撳墠瀛楃鏄惁澶у啓
- boolean curreCharIsUpperCase = true;
- // 涓嬩竴瀛楃鏄惁澶у啓
- boolean nexteCharIsUpperCase = true;
- for (int i = 0; i < str.length(); i++)
- {
- char c = str.charAt(i);
- if (i > 0)
- {
- preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1));
- }
- else
- {
- preCharIsUpperCase = false;
- }
-
- curreCharIsUpperCase = Character.isUpperCase(c);
-
- if (i < (str.length() - 1))
- {
- nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1));
- }
-
- if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase)
- {
- sb.append(SEPARATOR);
- }
- else if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase)
- {
- sb.append(SEPARATOR);
- }
- sb.append(Character.toLowerCase(c));
- }
-
- return sb.toString();
+ public static String toUnderScoreCase(String str) {
+ return StrUtil.toUnderlineCase(str);
}
/**
* 鏄惁鍖呭惈瀛楃涓�
- *
- * @param str 楠岃瘉瀛楃涓�
+ *
+ * @param str 楠岃瘉瀛楃涓�
* @param strs 瀛楃涓茬粍
* @return 鍖呭惈杩斿洖true
*/
- public static boolean inStringIgnoreCase(String str, String... strs)
- {
- if (str != null && strs != null)
- {
- for (String s : strs)
- {
- if (str.equalsIgnoreCase(trim(s)))
- {
- return true;
- }
- }
- }
- return false;
+ public static boolean inStringIgnoreCase(String str, String... strs) {
+ return StrUtil.equalsAnyIgnoreCase(str, strs);
}
/**
* 灏嗕笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆杞崲涓洪┘宄板紡銆傚鏋滆浆鎹㈠墠鐨勪笅鍒掔嚎澶у啓鏂瑰紡鍛藉悕鐨勫瓧绗︿覆涓虹┖锛屽垯杩斿洖绌哄瓧绗︿覆銆� 渚嬪锛欻ELLO_WORLD->HelloWorld
- *
+ *
* @param name 杞崲鍓嶇殑涓嬪垝绾垮ぇ鍐欐柟寮忓懡鍚嶇殑瀛楃涓�
* @return 杞崲鍚庣殑椹煎嘲寮忓懡鍚嶇殑瀛楃涓�
*/
- public static String convertToCamelCase(String name)
- {
- StringBuilder result = new StringBuilder();
- // 蹇�熸鏌�
- if (name == null || name.isEmpty())
- {
- // 娌″繀瑕佽浆鎹�
- return "";
- }
- else if (!name.contains("_"))
- {
- // 涓嶅惈涓嬪垝绾匡紝浠呭皢棣栧瓧姣嶅ぇ鍐�
- return name.substring(0, 1).toUpperCase() + name.substring(1);
- }
- // 鐢ㄤ笅鍒掔嚎灏嗗師濮嬪瓧绗︿覆鍒嗗壊
- String[] camels = name.split("_");
- for (String camel : camels)
- {
- // 璺宠繃鍘熷瀛楃涓蹭腑寮�澶淬�佺粨灏剧殑涓嬫崲绾挎垨鍙岄噸涓嬪垝绾�
- if (camel.isEmpty())
- {
- continue;
- }
- // 棣栧瓧姣嶅ぇ鍐�
- result.append(camel.substring(0, 1).toUpperCase());
- result.append(camel.substring(1).toLowerCase());
- }
- return result.toString();
+ public static String convertToCamelCase(String name) {
+ return StrUtil.upperFirst(StrUtil.toCamelCase(name));
}
/**
* 椹煎嘲寮忓懡鍚嶆硶 渚嬪锛歶ser_name->userName
*/
- public static String toCamelCase(String s)
- {
- if (s == null)
- {
- return null;
- }
- s = s.toLowerCase();
- StringBuilder sb = new StringBuilder(s.length());
- boolean upperCase = false;
- for (int i = 0; i < s.length(); i++)
- {
- char c = s.charAt(i);
-
- if (c == SEPARATOR)
- {
- upperCase = true;
- }
- else if (upperCase)
- {
- sb.append(Character.toUpperCase(c));
- upperCase = false;
- }
- else
- {
- sb.append(c);
- }
- }
- return sb.toString();
+ public static String toCamelCase(String s) {
+ return StrUtil.toCamelCase(s);
}
/**
* 鏌ユ壘鎸囧畾瀛楃涓叉槸鍚﹀尮閰嶆寚瀹氬瓧绗︿覆鍒楄〃涓殑浠绘剰涓�涓瓧绗︿覆
- *
- * @param str 鎸囧畾瀛楃涓�
+ *
+ * @param str 鎸囧畾瀛楃涓�
* @param strs 闇�瑕佹鏌ョ殑瀛楃涓叉暟缁�
* @return 鏄惁鍖归厤
*/
- public static boolean matches(String str, List<String> strs)
- {
- if (isEmpty(str) || isEmpty(strs))
- {
+ public static boolean matches(String str, List<String> strs) {
+ if (isEmpty(str) || CollUtil.isEmpty(strs)) {
return false;
}
- for (String pattern : strs)
- {
- if (isMatch(pattern, str))
- {
+ for (String pattern : strs) {
+ if (isMatch(pattern, str)) {
return true;
}
}
@@ -511,24 +217,18 @@
}
/**
- * 鍒ゆ柇url鏄惁涓庤鍒欓厤缃�:
- * ? 琛ㄧず鍗曚釜瀛楃;
- * * 琛ㄧず涓�灞傝矾寰勫唴鐨勪换鎰忓瓧绗︿覆锛屼笉鍙法灞傜骇;
+ * 鍒ゆ柇url鏄惁涓庤鍒欓厤缃�:
+ * ? 琛ㄧず鍗曚釜瀛楃;
+ * * 琛ㄧず涓�灞傝矾寰勫唴鐨勪换鎰忓瓧绗︿覆锛屼笉鍙法灞傜骇;
* ** 琛ㄧず浠绘剰灞傝矾寰�;
- *
+ *
* @param pattern 鍖归厤瑙勫垯
- * @param url 闇�瑕佸尮閰嶇殑url
+ * @param url 闇�瑕佸尮閰嶇殑url
* @return
*/
- public static boolean isMatch(String pattern, String url)
- {
+ public static boolean isMatch(String pattern, String url) {
AntPathMatcher matcher = new AntPathMatcher();
return matcher.match(pattern, url);
}
- @SuppressWarnings("unchecked")
- public static <T> T cast(Object obj)
- {
- return (T) obj;
- }
-}
\ No newline at end of file
+}
--
Gitblit v1.9.3