关键核心代码
将用户信息转换为MD5值的时候我们需要使用java.security.MessageDigest类
import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; public final class MyMD5 { public static String getMD5(String str) { String reStr = null; try { MessageDigest md = MessageDigest.getInstance("MD5");//创建具有指定算法名称的信息摘要 md.update(str.getBytes());//使用指定的字节更新摘要。 byte ss[] = md.digest();//通过执行诸如填充之类的最终操作完成哈希计算 reStr = bytes2String(ss); } catch (NoSuchAlgorithmException e) { } return reStr; } private static String bytes2String(byte[] aa) {//将字节数组转换为字符串 String hash = ""; for (int i = 0; i < aa.length; i++) {//循环数组 int temp; if (aa[i] < 0) //如果小于零,将其变为正数 temp = 256 + aa[i]; else temp = aa[i]; if (temp < 16) hash += "0"; hash += Integer.toString(temp, 16);//转换为16进制 } hash = hash.toUpperCase();//全部转换为大写 return hash; } }