Prechádzať zdrojové kódy

v 3.0.0 GA ReleaseNotes &StringUtils

Crystal.Sea 3 rokov pred
rodič
commit
254ab67b18

+ 7 - 4
ReleaseNotes.txt

@@ -1,9 +1,9 @@
 MaxKey v 3.0.0 GA 2021/09/29
-    *(MAXKEY-210701) 好雨科技Rainbond适配
+    *(MAXKEY-210701) 好雨科技Rainbond适配,实现基于Rainbond应用商店的快速部署
     *(MAXKEY-210702) 制定MaxKey技术路线图
     *(MAXKEY-210703) CHINER元数建模构建MaxKEY ER模型完善,数据库字段说明完善
-    *(MAXKEY-210704) Nacos配置中心支持
-    *(MAXKEY-210705) springcloud &springcloud alibaba支持
+    *(MAXKEY-210704) Nacos配置中心支持,可选支持本地和Nacos配置中心配置,配置更加灵活
+    *(MAXKEY-210705) springcloud &springcloud alibaba微服务支持
     *(MAXKEY-210706) spring cloud gateway支持
     *(MAXKEY-210707) application.properties参数调整和优化,支持外部Docker及环境变量的配置
     *(MAXKEY-210708) 同步器定时任务功能优化
@@ -24,7 +24,10 @@
     *(MAXKEY-210723) mgt登录错误提示信息
     *(MAXKEY-210724) 警告提示信息修复
     *(MAXKEY-210725) 工具类增强和优化
-    *(MAXKEY-210726) 依赖jar引用、更新和升级
+    *(MAXKEY-210726) 登录认证优化,增加密码策略应用和验证
+    *(MAXKEY-210727) CAS登录中参数回传的修复,增加'#'停止符的优化
+	*(MAXKEY-210728) StringUtils优化,直接继承org.apache.commons.lang3.StringUtils,增加自有逻辑
+    *(MAXKEY-210729) 依赖jar引用、更新和升级
         spring              5.3.10
         springBoot          2.5.5
         springkafka         2.7.7

+ 14 - 48
maxkey-common/src/main/java/org/maxkey/util/StringUtils.java

@@ -27,41 +27,7 @@ import java.util.Map;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
-public final class StringUtils {
-
-    /**
-     * avoid null, and return value trim.
-     * 
-     * @param value string value.
-     * @return the trim of value.
-     */
-    public static String avoidNull(String value) {
-        return (value == null) ? "" : value.trim();
-    }
-
-    public static boolean isNull(String value) {
-        return value == null;
-    }
-
-    /**
-     * @param value string value
-     * @return value
-     */
-    public static boolean isNullOrBlank(String value) {
-        return value == null || "".equals(value.trim());
-    }
-
-    public static boolean isNotEmpty(String value) {
-        return !isNullOrBlank(value);
-    }
-
-    public static boolean isNotNullAndEquals(String value, String equalString) {
-        return !isNullOrBlank(value) && value.equals(equalString);
-    }
-
-    public static boolean isNotNullAndEqualsIgnoreCase(String value, String equalString) {
-        return !isNullOrBlank(value) && value.equalsIgnoreCase(equalString);
-    }
+public final class StringUtils extends org.apache.commons.lang3.StringUtils {
 
     /*
      * 获取指定UTF-8模式字节长度的字符串
@@ -441,20 +407,20 @@ public final class StringUtils {
      * catch (BadHanyuPinyinOutputFormatCombination e) { e.printStackTrace(); }
      * }else{ pinyin += nameChar[i]; } } return pinyin; }
      */
-    public static Map<String, String> aduserName2Map(String aduserName) {
-        if (isNullOrBlank(aduserName)) {
+    public static Map<String, String> aduserName2Map(String activeDirectoryUserName) {
+        if (isEmpty(activeDirectoryUserName)) {
             return null;
         }
         Map<String, String> map = new HashMap<String, String>();
         int index = 0;
-        if ((index = aduserName.indexOf("\\")) > 0) {
-            map.put("domain", aduserName.substring(0, index));
-            map.put("userName", aduserName.substring(index + 1, aduserName.length()));
-        } else if ((index = aduserName.indexOf("@")) > 0) {
-            map.put("userName", aduserName.substring(0, index));
-            map.put("domain", aduserName.substring(index + 1));
+        if ((index = activeDirectoryUserName.indexOf("\\")) > 0) {
+            map.put("domain", activeDirectoryUserName.substring(0, index));
+            map.put("userName", activeDirectoryUserName.substring(index + 1, activeDirectoryUserName.length()));
+        } else if ((index = activeDirectoryUserName.indexOf("@")) > 0) {
+            map.put("userName", activeDirectoryUserName.substring(0, index));
+            map.put("domain", activeDirectoryUserName.substring(index + 1));
         } else {
-            map.put("userName", aduserName);
+            map.put("userName", activeDirectoryUserName);
         }
         return map;
     }
@@ -465,16 +431,16 @@ public final class StringUtils {
      * @param str
      * @return
      */
-    public static String takeoffDomain(String aduserName) {
-        Map<String, String> map = aduserName2Map(aduserName);
+    public static String takeoffDomain(String activeDirectoryUserName) {
+        Map<String, String> map = aduserName2Map(activeDirectoryUserName);
         if (BeanUtil.isNotNull(map)) {
             return map.get("userName");
         }
         return null;
     }
 
-    public static String getAdDomin(String aduserName) {
-        Map<String, String> map = aduserName2Map(aduserName);
+    public static String getActiveDirectoryDomin(String activeDirectoryUserName) {
+        Map<String, String> map = aduserName2Map(activeDirectoryUserName);
         if (BeanUtil.isNotNull(map)) {
             return map.get("domain");
         }

+ 1 - 1
maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/contorller/RegistrationController.java

@@ -182,7 +182,7 @@ public class RegistrationController {
  	@RequestMapping(value={"/registeron"})
  	@ResponseBody
 	public Message registeron(UserInfo userInfo,@RequestParam String emailMobile) throws ServletException, IOException {
- 		if(StringUtils.isNullOrBlank(emailMobile)) {
+ 		if(StringUtils.isEmpty(emailMobile)) {
  			return new Message(WebContext.getI18nValue("register.emailMobile.error"),"1");
  		}
  		if(StringUtils.isValidEmail(emailMobile)) {

+ 1 - 1
maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/contorller/SafeController.java

@@ -135,7 +135,7 @@ public class SafeController {
 		_logger.debug("App Login Password : "+userInfo.getAppLoginPassword());
 		_logger.debug("App Login new Password : "+ReciprocalUtils.encode(newPassword));
 		if(newPassword.equals(confirmPassword)){
-			if(StringUtils.isNullOrBlank(userInfo.getAppLoginPassword())||userInfo.getAppLoginPassword().equals(ReciprocalUtils.encode(oldPassword))){
+			if(StringUtils.isEmpty(userInfo.getAppLoginPassword())||userInfo.getAppLoginPassword().equals(ReciprocalUtils.encode(oldPassword))){
 				userInfo.setAppLoginPassword(ReciprocalUtils.encode(newPassword));
 				boolean change= userInfoService.changeAppLoginPassword(userInfo);
 				_logger.debug(""+change);

+ 1 - 1
maxkey-webs/maxkey-web-maxkey/src/main/java/org/maxkey/web/filter/SingleSignOnFilter.java

@@ -50,7 +50,7 @@ public class SingleSignOnFilter implements Filter {
         // 浠巗ession涓幏鍙栧瓨鏀剧殑appid
         String appId = (String) session.getAttribute(WebConstants.SINGLE_SIGN_ON_APP_ID);
         // 鑾峰彇鏈�鍚庝竴涓�"/"鐨勬暟鎹綔涓篴ppid锛屼繚瀛樺湪session涓�
-        if (StringUtils.isNullOrBlank(appId)) {
+        if (StringUtils.isEmpty(appId)) {
             String uir = httpServletRequest.getRequestURI();
             session.setAttribute(WebConstants.SINGLE_SIGN_ON_APP_ID, 
                                 uir.substring(uir.lastIndexOf("/") + 1));

+ 1 - 1
maxkey-webs/maxkey-web-mgt/src/main/java/org/maxkey/web/contorller/UserInfoController.java

@@ -292,7 +292,7 @@ public class UserInfoController {
 		binder.registerCustomEditor(String.class, new PropertyEditorSupport() {
 		    @Override
 			public void setAsText(String value) {
-		        	if(StringUtils.isNullOrBlank(value)){
+		        	if(StringUtils.isEmpty(value)){
 		        		setValue(null);
 		        	}else{
 		        		setValue(value);