瀏覽代碼

添加md5工具类

bihuisong 1 年之前
父節點
當前提交
256931a677
共有 1 個文件被更改,包括 52 次插入0 次删除
  1. 52 0
      songhua-admin/src/main/java/com/songhua/web/controller/utils/MD5Encryptor.java

+ 52 - 0
songhua-admin/src/main/java/com/songhua/web/controller/utils/MD5Encryptor.java

@@ -0,0 +1,52 @@
+package com.songhua.web.controller.utils;
+
+import java.security.MessageDigest;
+import java.security.NoSuchAlgorithmException;
+
+public class MD5Encryptor {
+
+    // MD5 加密(32 位小写)
+    public static String md5EncryptToLowercase(String str) {
+        return md5Encrypt(str).toLowerCase();
+    }
+
+    // MD5 加密(32 位大写)
+    public static String md5EncryptToUppercase(String str) {
+        return md5Encrypt(str).toUpperCase();
+    }
+
+    // MD5 加密
+    private static String md5Encrypt(String str) {
+        try {
+            // 创建 MessageDigest 对象
+            MessageDigest md = MessageDigest.getInstance("MD5");
+            // 将输入字符串转换为字节数组
+            byte[] inputBytes = str.getBytes();
+            // 计算 MD5 哈希值
+            byte[] hashBytes = md.digest(inputBytes);
+            // 将字节数组转换为十六进制字符串
+            StringBuilder hexString = new StringBuilder();
+            for (byte hashByte : hashBytes) {
+                String hex = Integer.toHexString(0xFF & hashByte);
+                if (hex.length() == 1) {
+                    hexString.append('0');
+                }
+                hexString.append(hex);
+            }
+            return hexString.toString();
+        } catch (NoSuchAlgorithmException e) {
+            e.printStackTrace();
+        }
+        return null;
+    }
+
+    public static void main(String[] args) {
+        String str = "123456";
+        // 封装 MD5 加密结果(32 位小写)
+        String encryptedLowercase = md5EncryptToLowercase(str);
+        System.out.println("32-bit Lowercase: " + encryptedLowercase);
+        // 封装 MD5 加密结果(32 位大写)
+        String encryptedUppercase = md5EncryptToUppercase(str);
+        System.out.println("32-bit Uppercase: " + encryptedUppercase);
+    }
+}