【Jave SE】MD5加密

【JaveSE】MD5加密

1、apache commons-codec.jar,一般工程,不引入spring的情况

import org.apache.commons.codec.digest.DigestUtils;

/**
 * MD5加密之方法一
 * @explain 借助apache工具类DigestUtils实现
 * @param str
 *            待加密字符串
 * @return 16进制加密字符串
 */
public static String encryptToMD5(String str) {
    return DigestUtils.md5Hex(str);
}  

 

2、spring核心包,使用spring的情况

import org.springframework.util.DigestUtils
import org.slf4j.logger
import org.slf4j.loggerFactory

/**
 * MD5加密之方法三
 * @explain springboot自带MD5加密
 * @param str
 *            待加密字符串
 * @return 16进制加密字符串
 */
 public static String encrypt3ToMD5(String str) {
     log.debug("MD5待加密字符串:\n"+str);
     String md5 = "  ";
     try {
     md5 = DigestUtils.md5DigestAsHex(text.getBytes("utf-8"))
    } catch (UnsupportedEncodingException e) {
    e.printStackTrace();
    }
    log.degbug("MD5加密结果:\n"+md5)
    return md5;
 }

 

3、java MessageDigest 自己实现

/**
 * MD5加密之方法二
 * @explain java实现
 * @param str
 *            待加密字符串
 * @return 16进制加密字符串
 */
public static String encrypt2ToMD5(String str) {
    // 加密后的16进制字符串
    String hexStr = "";
    try {
        // 此 MessageDigest 类为应用程序提供信息摘要算法的功能
        MessageDigest md5 = MessageDigest.getInstance("MD5");
        // 转换为MD5码
        byte[] digest = md5.digest(str.getBytes("utf-8"));
        hexStr = ByteUtils.toHexString(digest);
    } catch (Exception e) {
        e.printStackTrace();
    }
    return hexStr;
}  

 

posted @ 2022-08-01 18:04  翠微  阅读(60)  评论(0编辑  收藏  举报