创建工具类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45

package com.example.bigevent.util;

import java.security.MessageDigest;

public class Md4Util {
public static String MD5(String s)
{
char[] hexDigits = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' };
try {
byte[] btInput = s.getBytes();

MessageDigest mdInst = MessageDigest.getInstance("MD5");

mdInst.update(btInput);

byte[] md = mdInst.digest();

int j = md.length;
char[] str = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[(k++)] = hexDigits[(byte0 >>> 4 & 0xF)];
str[(k++)] = hexDigits[(byte0 & 0xF)];
}
return new String(str);
}
catch (Exception e) {
e.printStackTrace();
}return null;
}
public static String convertMD5(String inStr){

char[] a = inStr.toCharArray();
for (int i = 0; i < a.length; i++){
a[i] = (char) (a[i] ^ 't');
}
String s = new String(a);
return s;

}

}

调用工具类例子

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
@RequestMapping("/login")
public Result login(@Pattern(regexp="^\\S{5,16}$")String username,@Pattern(regexp = "^\\S{5,16}$")String password){
User byUsername = userService.findByUsername(username);
if(byUsername==null){
return Result.error("用户不存在");
}else{
//这呢
String ps = Md4Util.MD5(password);
System.out.println(ps);
System.out.println(byUsername.getPassword());
if (ps.equals(byUsername.getPassword())){
Map<String,Object> token = new HashMap<>();
token.put("username",byUsername.getUsername());
token.put("id",byUsername.getId());
String token1 = JwtUtil.getToken(token);
stringRedisTemplate.opsForValue().set(token1,token1,1, TimeUnit.HOURS);
return Result.success(token1);
}else{
return Result.error("密码错误");
}
}
}