Java中md5的几种方式

方式一:Java自身包实现

/**
     * md5加密一(Java自身包实现-32位小写加密)
     * @param str
     * @return
     */
    public static String md5(String str) {
        byte[] secretBytes = null;
        try {
            secretBytes = MessageDigest.getInstance("md5").digest(
                    str.getBytes());
        } catch (Exception e) {
            throw new RuntimeException("没有这个md5算法!");
        }
        String md5code = new BigInteger(1, secretBytes).toString(16);
        for (int i = 0; i < 32 - md5code.length(); i++) {
            md5code = "0" + md5code;
        }
        return md5code;
    }

方法二:apache提供的加密包commons-codec

需要依赖
<dependency>
    <groupId>commons-codec</groupId>
    <artifactId>commons-codec</artifactId>
    <version>1.11</version>
</dependency>
/**
     * md5加密二(apache提供了一个加密包commons-codec)
     * @param plainText
     * @return
     */
    public static String md52(String plainText) {
        try {
            // md5加密方法使用规则
            return DigestUtils.md5Hex(plainText.getBytes("UTF-8"));
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
            return null;
        }
    }

方法三:hutool包提供的MD5加密

需要依赖hutool相关依赖

使用方法

SecureUtil.md5(str)实现

总结:三种方法的结果是一致的,实际中根据不同的项目情况选择不同的方法使用。

文章出处登录后可见!

已经登录?立即刷新

共计人评分,平均

到目前为止还没有投票!成为第一位评论此文章。

(0)
青葱年少的头像青葱年少普通用户
上一篇 2023年12月7日
下一篇 2023年12月7日

相关推荐