登录加密可以使用一个写好的工具类Util包的MD5Utils
public class MD5Utils {
/**
* MD5加密类
* @param str 要加密的字符串
* @return 加密后的字符串
*/
public static String code(String str){
try {
MessageDigest md = MessageDigest.getInstance("MD5");
md.update(str.getBytes());
byte[]byteDigest = md.digest();
int i;
StringBuffer buf = new StringBuffer("");
for (int offset = 0; offset < byteDigest.length; offset++) {
i = byteDigest[offset];
if (i < 0)
i += 256;
if (i < 16)
buf.append("0");
buf.append(Integer.toHexString(i));
}
//32位加密
return buf.toString();
// 16位的加密
//return buf.toString().substring(8, 24);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
return null;
}
}
public static void main(String[] args) {
System.out.println(code("1111"));
}
}
加密完成后执行main方法,得到加密的密码
第二步 然后把该密码ctrl+c覆盖到数据库里的密码里
第三步要在Service包下的实现类Impl包中的xxxServiceImpl 类中改写使用MD5Utils方法,使用它来拿到数据包的加密密码,不然直接拿的话是拿不到的
@Override
public User cherkUser(String username, String password) {
User user = userRepository.findByUsernameAndPassword(username, MD5Utils.code(password));
return user;
}
}