You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
92 lines
2.2 KiB
92 lines
2.2 KiB
package com.fr.plugin.sso.utils; |
|
|
|
import com.fr.json.JSONObject; |
|
import com.fr.log.FineLoggerFactory; |
|
import com.fr.stable.CodeUtils; |
|
import com.fr.third.org.apache.commons.codec.digest.DigestUtils; |
|
import sun.misc.BASE64Decoder; |
|
import sun.misc.BASE64Encoder; |
|
|
|
import javax.servlet.http.HttpServletRequest; |
|
import java.io.BufferedReader; |
|
import java.io.IOException; |
|
import java.security.MessageDigest; |
|
import java.util.UUID; |
|
|
|
public class Utils { |
|
|
|
/** |
|
* 判断字符串是否为空 |
|
* @param str |
|
* @return true 空字符串 false 非空字符串 |
|
*/ |
|
public static boolean isNullStr(String str){ |
|
return !(str != null && !str.isEmpty() && !"null".equals(str)); |
|
} |
|
|
|
/** |
|
* 判断字符串是否非空 |
|
* @param str |
|
* @return |
|
*/ |
|
public static boolean isNotNullStr(String str){ |
|
return !isNullStr(str); |
|
} |
|
|
|
/** |
|
* MD5加密 |
|
* @param str |
|
* @return |
|
*/ |
|
public static String getMd5Str(String str) |
|
{ |
|
return DigestUtils.md5Hex(str); |
|
} |
|
|
|
|
|
/** |
|
* 获取完整的访问路径 |
|
*/ |
|
public static String getAllUrl(HttpServletRequest req, String queryStr){ |
|
String url = req.getRequestURL().toString(); |
|
|
|
if(isNullStr(queryStr)){ |
|
return url; |
|
} |
|
|
|
return url+"?"+queryStr; |
|
} |
|
|
|
/** |
|
* 帆软shaEncode加密 |
|
*/ |
|
|
|
public static String shaEncode(String str){ |
|
return CodeUtils.sha256Encode(str); |
|
} |
|
|
|
/** |
|
* 获取uuid |
|
*/ |
|
public static String uuid(){ |
|
return UUID.randomUUID().toString(); |
|
} |
|
|
|
public static JSONObject getRequestBody(HttpServletRequest req){ |
|
StringBuffer sb = new StringBuffer(); |
|
String line = null; |
|
try { |
|
BufferedReader reader = req.getReader(); |
|
while ((line = reader.readLine()) != null) |
|
sb.append(line); |
|
} catch (Exception e) { |
|
FRUtils.FRLogInfo("getRequestBody:exception:"+e.getMessage()); |
|
} |
|
//将空格和换行符替换掉避免使用反序列化工具解析对象时失败 |
|
String jsonString = sb.toString().replaceAll("\\s","").replaceAll("\n",""); |
|
|
|
JSONObject json = new JSONObject(jsonString); |
|
|
|
return json; |
|
} |
|
}
|
|
|