方法一:推荐使用
所需jar包:commons-codec.jar
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);
}
方法二
/**
* 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;
}
方法三: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;
}
测试
public static void main(string[] args) {
string str = "marydon";
system.out.println("md5加密方法一:" md5utils.encrypttomd5(str));
system.out.println("md5加密方法二:" md5utils.encrypt2tomd5(str));
system.out.println("md5加密方法三:" md5utils.encrypt3tomd5(str));
// 结束都是:988218e7eefcd86d5d855a8947f37f43
}