在Java中,你可以使用`java.security.MessageDigest`类来生成MD5哈希。下面是一个简单的工具类示例,用于计算字符串的MD5哈希值:
```java
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
public class MD5Util {
/**
* 计算字符串的MD5哈希值
* @param input 要计算哈希值的字符串
* @return MD5哈希值的十六进制表示
*/
public static String calculateMD5(String input) {
try {
// 获取MD5 MessageDigest实例
MessageDigest md = MessageDigest.getInstance("MD5");
// 对输入字符串进行哈希计算
byte[] digest = md.digest(input.getBytes());
// 将字节数组转换为十六进制字符串
StringBuilder sb = new StringBuilder();
for (byte b : digest) {
sb.append(String.format("%02x", b));
}
return sb.toString();
} catch (NoSuchAlgorithmException e) {
throw new RuntimeException("无法找到MD5算法", e);
}
}
public static void main(String[] args) {
String testString = "Hello, World!";
String md5Hash = calculateMD5(testString);
System.out.println("MD5 Hash of \"" + testString + "\" is: " + md5Hash);
}
}
```
这个工具类包含一个静态方法`calculateMD5`,它接受一个字符串作为输入,返回该字符串的MD5哈希值的十六进制表示。在`main`方法中,代码演示了如何使用这个工具类来计算一个测试字符串的MD5哈希值,并将结果打印到控制台。