java实现MD5加密的三种方式
方法一:推荐使用
所需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
}
关于MD5自动补零
https://www.cnblogs.com/Marydon20170307/p/9116924.html
java实现MD5加密的三种方式相关推荐
- Java中实现接口的三种方式您造吗?
本文介绍了Java中实现接口的三种方式:常规实现方式.匿名内部类和 Lambda表达式实现方式.希望已经了解的同学可以重新温习一下,不了解的同学则从中受益! Java中接口最常规的实现方式 同学们都会 ...
- java中实现多线程的三种方式
java中实现多线程的三种方式 1.实现多线程的方法: 在java中实现多线程的两途径:继承Thread类,实现Runable接口(Callable) 2.继承Thread类实现多线程: 继承类T ...
- java中Map遍历的三种方式
Java中Map遍历的三种方式 前言 一:在for循环中使用entries实现Map的遍历: 二:在for循环中遍历key或者values,一般适用于只需要map中的key或者value时使用,在性能 ...
- Java 创建一个线程的三种方式
Java 创建一个线程的三种方式 更多内容,点击了解: https://how2j.cn/k/thread/thread-start/353.html 创建多线程有3种方式,分别是继承线程类,实现Ru ...
- Java代码实现MD5加密的两种方式
MD5的全称是Message-Digest Algorithm 5 (信息-摘要算法),在90年代初,由MIT Laboratory for Computer Scientce 和RSA Data S ...
- Java 实现 HTTP 请求的三种方式
除了本文推荐的几种方式,强烈推荐 OkHttp 目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的开源框架去实现.HTTPClient对HTTP的封装性比较 ...
- 转list_你知道Java数组转List的三种方式及对比吗?
前言: 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的类型转换错误原因解析. 一.最常见方式(未必最佳) 通过 Arrays.asList(strArray ...
- java实现HTTP请求的三种方式
From: https://www.cnblogs.com/hhhshct/p/8523697.html 目前JAVA实现HTTP请求的方法用的最多的有两种:一种是通过HTTPClient这种第三方的 ...
- Java 数组转 List 的三种方式及对比
来源 | blog.csdn.net/x541211190/article/details/79597236 本文介绍Java中数组转为List三种情况的优劣对比,以及应用场景的对比,以及程序员常犯的 ...
- android java调用_关于Android中Java调用外部命令的三种方式
此所谓三种方式,只是个人认为.本人还是菜鸟初涉,所以有所错误,请指正. 个人认为,Java调用外部命令.无非三种情况: 一.是只执行命令,不考虑返回值. 二.是执行命令的同时,还需要得到返回值. 三. ...
最新文章
- Android onTouch 方法 和onTouchEvent 方法
- 骑摩托的蒙娜丽莎 - 曼妙风骚的花式慢跑算法
- 关于onreadystatechange属性(转)
- Python Django URL逆向解析(通过Python代码逆向访问)代码示例
- RTT大牛告诉你,混合微内核是什么?
- C文件 写入 读取 函数
- poj 1155 TELE
- python为运行为何出现乱码_我的python写入文件正常,打开后却是乱码格式为什么?...
- linux命令应用大词典.pdf,Linux命令应用大词典
- 数据库创建/删除视图语句
- 集成电路可测性设计DFT技术入门概论--MBIST技术报告
- redis缓存服务器介绍与配置
- linux中dd命令增加内存使用率,Linux 下使用 dd 命令进行硬盘 I/O 性能检测
- 实验三 使用CSS3
- QSqlQuery内存问题分析及解决
- 什么是自动气象站 校园气象站
- 小程序笔记(四)发表评论或者普通发帖
- 小狗钱钱《读书笔记》系列(上)
- centos7查看进程ps_Linux ps命令:查看所有进程信息
- 电子商务网站建设策划书范例