@author 13 @qq交流群 719099151 @email 2449207463@qq.com @link https://github.com/ZHENFENG13/My-Column
| 13 | * @link https://github.com/ZHENFENG13/My-Column |
| 14 | */ |
| 15 | public class SystemUtil { |
| 16 | |
| 17 | private SystemUtil() { |
| 18 | } |
| 19 | |
| 20 | /** |
| 21 | * 登录或注册成功后,生成保持用户登录状态会话token值 |
| 22 | * |
| 23 | * @param src:为用户最新一次登录时的now()+user.id+random(4) |
| 24 | * @return |
| 25 | */ |
| 26 | public static String genToken(String src) { |
| 27 | if (null == src || "".equals(src)) { |
| 28 | return null; |
| 29 | } |
| 30 | try { |
| 31 | MessageDigest md = MessageDigest.getInstance("MD5"); |
| 32 | md.update(src.getBytes()); |
| 33 | String result = new BigInteger(1, md.digest()).toString(16); |
| 34 | if (result.length() == 31) { |
| 35 | result = result + "-"; |
| 36 | } |
| 37 | System.out.println(result); |
| 38 | return result; |
| 39 | } catch (Exception e) { |
| 40 | return null; |
| 41 | } |
| 42 | } |
| 43 | |
| 44 | /** |
| 45 | * 清理string |
| 46 | * @param value |
| 47 | * @return |
| 48 | */ |
| 49 | public static String cleanString(String value) { |
| 50 | if (!StringUtils.hasLength(value)) { |
| 51 | return ""; |
| 52 | } |
| 53 | value = value.toLowerCase(); |
| 54 | value = value.replaceAll("<", "& lt;").replaceAll(">", "& gt;"); |
| 55 | value = value.replaceAll("\\(", "& #40;").replaceAll("\\)", "& #41;"); |
| 56 | value = value.replaceAll("'", "& #39;"); |
| 57 | value = value.replaceAll("onload", "0nl0ad"); |
| 58 | value = value.replaceAll("xml", "xm1"); |
| 59 | value = value.replaceAll("window", "wind0w"); |
| 60 | value = value.replaceAll("click", "cl1ck"); |
| 61 | value = value.replaceAll("var", "v0r"); |
| 62 | value = value.replaceAll("let", "1et"); |
| 63 | value = value.replaceAll("function", "functi0n"); |
| 64 | value = value.replaceAll("return", "retu1n"); |
| 65 | value = value.replaceAll("$", ""); |
| 66 | value = value.replaceAll("document", "d0cument"); |
| 67 | value = value.replaceAll("const", "c0nst"); |
| 68 | value = value.replaceAll("eval\\((.*)\\)", ""); |
| 69 | value = value.replaceAll("[\\\"\\\'][\\s]*javascript:(.*)[\\\"\\\']", "\"\""); |
| 70 | value = value.replaceAll("script", "scr1pt"); |
| 71 | value = value.replaceAll("insert", "1nsert"); |
| 72 | value = value.replaceAll("drop", "dr0p"); |
nothing calls this directly
no outgoing calls
no test coverage detected