Md5Util.java 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. package com.usky.ems.util;
  2. import java.security.MessageDigest;
  3. import java.security.NoSuchAlgorithmException;
  4. /**
  5. * MD5工具类
  6. *
  7. * @author system
  8. * @since 2024-01-01
  9. */
  10. public class Md5Util {
  11. /**
  12. * 计算MD5值
  13. *
  14. * @param input 输入字符串
  15. * @return MD5值(32位小写十六进制字符串)
  16. */
  17. public static String md5(String input) {
  18. try {
  19. MessageDigest md = MessageDigest.getInstance("MD5");
  20. byte[] messageDigest = md.digest(input.getBytes());
  21. // 转换为十六进制字符串
  22. StringBuilder hexString = new StringBuilder();
  23. for (byte b : messageDigest) {
  24. String hex = Integer.toHexString(0xff & b);
  25. if (hex.length() == 1) {
  26. hexString.append('0');
  27. }
  28. hexString.append(hex);
  29. }
  30. return hexString.toString();
  31. } catch (NoSuchAlgorithmException e) {
  32. throw new RuntimeException("MD5计算失败", e);
  33. }
  34. }
  35. }