From 51fe2ef0a1742ab1f31cfedab2088b65a1d26131 Mon Sep 17 00:00:00 2001 From: HuangHai <10402852@qq.com> Date: Fri, 23 May 2025 10:29:05 +0800 Subject: [PATCH] 'commit' --- .../com/dsideal/Sso/Util/CaptchaUtil.java | 21 +-- .../java/com/dsideal/Sso/Util/CommonUtil.java | 136 ++---------------- .../java/com/dsideal/Sso/Util/ThirdUtil.java | 47 ------ 3 files changed, 21 insertions(+), 183 deletions(-) delete mode 100644 dsSso/src/main/java/com/dsideal/Sso/Util/ThirdUtil.java diff --git a/dsSso/src/main/java/com/dsideal/Sso/Util/CaptchaUtil.java b/dsSso/src/main/java/com/dsideal/Sso/Util/CaptchaUtil.java index 55e74205..ae6a3f93 100644 --- a/dsSso/src/main/java/com/dsideal/Sso/Util/CaptchaUtil.java +++ b/dsSso/src/main/java/com/dsideal/Sso/Util/CaptchaUtil.java @@ -14,12 +14,10 @@ public class CaptchaUtil { private static final String FONT_NAME = "Fixedsys"; private static final int FONT_SIZE = 18; - private Random random = new Random(); + private final Random random = new Random(); - private int width = 80;// 图片宽 - private int height = 25;// 图片高 - private int lineNum = 5;// 干扰线数量 - private int strNum = 4;// 随机产生字符数量 + private final int width = 80;// 图片宽 + private final int height = 25;// 图片高 /** * 生成随机图片 @@ -38,11 +36,15 @@ public class CaptchaUtil { g.setColor(getRandColor(110, 120)); // 绘制干扰线 + // 干扰线数量 + int lineNum = 5; for (int i = 0; i < lineNum; i++) { drowLine(g); } // 绘制随机字符 - g.setFont(new Font(FONT_NAME, Font.ROMAN_BASELINE, FONT_SIZE)); + g.setFont(new Font(FONT_NAME, Font.PLAIN, FONT_SIZE)); + // 随机产生字符数量 + int strNum = 4; for (int i = 1; i <= strNum; i++) { randomCode.append(drowString(g, i)); } @@ -54,10 +56,10 @@ public class CaptchaUtil { * 给定范围获得随机颜色 */ private Color getRandColor(int fc, int bc) { - if (fc > 255){ + if (fc > 255) { fc = 255; } - if (bc > 255){ + if (bc > 255) { bc = 255; } int r = fc + random.nextInt(bc - fc); @@ -72,8 +74,7 @@ public class CaptchaUtil { private String drowString(Graphics g, int i) { g.setColor(new Color(random.nextInt(101), random.nextInt(111), random .nextInt(121))); - String rand = String.valueOf(getRandomString(random.nextInt(RANDOM_STRS - .length()))); + String rand = getRandomString(random.nextInt(RANDOM_STRS.length())); g.translate(random.nextInt(3), random.nextInt(3)); g.drawString(rand, 13 * i, 16); return rand; diff --git a/dsSso/src/main/java/com/dsideal/Sso/Util/CommonUtil.java b/dsSso/src/main/java/com/dsideal/Sso/Util/CommonUtil.java index d6ccacae..d5dff0e7 100644 --- a/dsSso/src/main/java/com/dsideal/Sso/Util/CommonUtil.java +++ b/dsSso/src/main/java/com/dsideal/Sso/Util/CommonUtil.java @@ -1,17 +1,12 @@ package com.dsideal.Sso.Util; -import java.io.BufferedReader; -import java.io.File; -import java.io.FileReader; import java.text.SimpleDateFormat; import java.util.*; import java.util.regex.Matcher; import java.util.regex.Pattern; -import com.alibaba.fastjson.JSONObject; import com.dsideal.Sso.Model.Login; import com.jfinal.kit.PropKit; -import com.jfinal.plugin.activerecord.Record; public class CommonUtil { /** @@ -29,71 +24,6 @@ public class CommonUtil { return map; } - public static Map returnMessageJson(boolean result, JSONObject jo) { - Map map = new HashMap<>(); - map.put("success", result); - map.put("result", jo); - return map; - } - - public static Map returnMessageJson(boolean result, List list) { - Map map = new HashMap<>(); - map.put("success", result); - map.put("result", list); - return map; - } - /** - * 将字符串参数转为Map - * - * @param strUrlParam - * @return - */ - public static Map urlSplit(String strUrlParam) { - Map mapRequest = new HashMap<>(); - String[] arrSplit = null; - arrSplit = strUrlParam.split("[&]"); - for (String strSplit : arrSplit) { - String[] arrSplitEqual = null; - arrSplitEqual = strSplit.split("[=]"); - if (arrSplitEqual.length > 1) { - mapRequest.put(arrSplitEqual[0], arrSplitEqual[1]); - } else { - if (arrSplitEqual[0] != "") { - mapRequest.put(arrSplitEqual[0], ""); - } - } - } - return mapRequest; - } - - /** - * 将一个Map转为Map - * - * @param mapValueStr - * @return - */ - public static Map MapValueStringToObject(Map mapValueStr) { - Map mapValueObj = new HashMap<>(); - for (Map.Entry entry : mapValueStr.entrySet()) { - mapValueObj.put(entry.getKey(), entry.getValue()); - } - return mapValueObj; - } - - /** - * 将一个Map转为Map - * - * @param mapValueObj - * @return - */ - public static Map MapValueObjectToString(Map mapValueObj) { - Map mapValueStr = new HashMap<>(); - for (Map.Entry entry : mapValueObj.entrySet()) { - mapValueStr.put(entry.getKey(), entry.getValue().toString()); - } - return mapValueStr; - } - /** * 获取6位随机数 * @@ -102,11 +32,10 @@ public class CommonUtil { public static String getRandom() { String sources = "0123456789"; Random rand = new Random(); - StringBuffer flag = new StringBuffer(); + StringBuilder flag = new StringBuilder(); for (int j = 0; j < 6; j++) { - flag.append(sources.charAt(rand.nextInt(9)) + ""); + flag.append(sources.charAt(rand.nextInt(9))); } - return flag.toString(); } @@ -132,29 +61,6 @@ public class CommonUtil { } } - /** - * 功能:将文本文件的内容读到字符串里 - * 作者:黄海 - * 时间:2018-11-22 - * - * @param file - * @return - */ - public static String txt2String(File file) { - StringBuilder result = new StringBuilder(); - try { - BufferedReader br = new BufferedReader(new FileReader(file));//构造一个BufferedReader类来读取文件 - String s = null; - while ((s = br.readLine()) != null) {//使用readLine方法,一次读一行 - result.append(System.lineSeparator() + s); - } - br.close(); - } catch (Exception e) { - e.printStackTrace(); - } - return result.toString(); - } - /** * 验证是否为邮箱 * @@ -162,7 +68,6 @@ public class CommonUtil { * @return */ public static boolean getIsEmailLegal(String eMail) { - boolean flag = false; try { String regExp = "^([a-z0-9A-Z]+[-|_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$"; Pattern p = Pattern.compile(regExp); @@ -182,7 +87,6 @@ public class CommonUtil { * @return */ public static boolean getPwdLegal(String pwd) { - boolean flag = false; try { String regExp = "[a-z0-9A-Z]+"; Pattern p = Pattern.compile(regExp); @@ -258,49 +162,32 @@ public class CommonUtil { return nowTime; } - /** - * 功能:获取6位随机数 - * 作者:吴缤 - * 日期:2018-11-27 - * - * @return - */ - public static String getSixRandom() { - String sources = "0123456789"; - Random rand = new Random(); - StringBuffer flag = new StringBuffer(); - for (int j = 0; j < 6; j++) { - flag.append(sources.charAt(rand.nextInt(9)) + ""); - } - return flag.toString(); - } - public static String handleRedirectUrlParas(String redirect_url) { String redirectUrl = redirect_url; String[] paras = redirect_url.split("\\?"); if (paras.length > 1) { - String uri = paras[0]; + StringBuilder uri = new StringBuilder(paras[0]); Map parasMap = URLRequest(redirect_url); for (Map.Entry entry : parasMap.entrySet()) { if (!entry.getKey().equals(PropKit.get("sso.sessionid"))) { - if (uri.indexOf("?") == -1) { - uri += "?"+entry.getKey()+"="+entry.getValue(); + if (!uri.toString().contains("?")) { + uri.append("?").append(entry.getKey()).append("=").append(entry.getValue()); }else{ - uri += "&"+entry.getKey()+"="+entry.getValue(); + uri.append("&").append(entry.getKey()).append("=").append(entry.getValue()); } } } - redirectUrl = uri; + redirectUrl = uri.toString(); } return redirectUrl; } private static Map URLRequest(String URL) { - Map mapRequest = new HashMap(); + Map mapRequest = new HashMap<>(); - String[] arrSplit = null; + String[] arrSplit; String strUrlParam = TruncateUrlPage(URL); if (strUrlParam == null) { @@ -329,7 +216,7 @@ public class CommonUtil { private static String TruncateUrlPage(String strURL) { String strAllParam = null; - String[] arrSplit = null; + String[] arrSplit; strURL = strURL.trim(); @@ -341,9 +228,6 @@ public class CommonUtil { } } } - return strAllParam; } - - } diff --git a/dsSso/src/main/java/com/dsideal/Sso/Util/ThirdUtil.java b/dsSso/src/main/java/com/dsideal/Sso/Util/ThirdUtil.java deleted file mode 100644 index a06072d0..00000000 --- a/dsSso/src/main/java/com/dsideal/Sso/Util/ThirdUtil.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.dsideal.Sso.Util; - -import com.alibaba.fastjson.JSONObject; -import com.jfinal.kit.PropKit; - -public class ThirdUtil { - - public static String getQqOpenId(String code) { - String qqOpenId = ""; - String accessTokenUrl = "https://graph.qq.com/oauth2.0/token"; - String accessTokenParams = String.format( - "grant_type=authorization_code&client_id=%s&client_secret=%s&code=%s&redirect_uri=%s", - PropKit.get("qq.app.id"), PropKit.get("qq.app.key"), code, PropKit.get("qq.redirect.uri")); - String qqStrAccessToken = HttpRequest.sendGet(accessTokenUrl, accessTokenParams); - if (qqStrAccessToken.length() > 0) { - String accessToken = CommonUtil.urlSplit(qqStrAccessToken).get("access_token"); - if (accessToken != null) { - String openIdUrl = "https://graph.qq.com/oauth2.0/me"; - String openIdParams = String.format("access_token=%s", accessToken); - String qqStrOpenId = HttpRequest.sendGet(openIdUrl, openIdParams); - if (qqStrOpenId.length() > 0) { - int bInt = qqStrOpenId.indexOf("("); - int eInt = qqStrOpenId.indexOf(")"); - JSONObject qqObjJson = JSONObject.parseObject(qqStrOpenId.substring(bInt + 1, eInt)); - qqOpenId = qqObjJson.getString("openid"); - } - } - } - - return qqOpenId; - } - - public static String getWxOpenId(String code) { - String wxOpenId = ""; - String accessTokenUrl = "https://api.weixin.qq.com/sns/oauth2/access_token"; - String accessTokenParams = String.format("appid=%s&secret=%s&code=%s&grant_type=authorization_code", - PropKit.get("wx.app.id"), PropKit.get("wx.app.secret"), code); - String wxStrJson = HttpRequest.sendGet(accessTokenUrl, accessTokenParams); - if (wxStrJson.length() > 0) { - JSONObject wxObjJson = JSONObject.parseObject(wxStrJson); - wxOpenId = wxObjJson.getString("openid"); - } - - return wxOpenId; - } - -}