Java生成MD5的两种方式

Java生成MD5的两种方式1原生的packagecom.pibigstar.common.utils;importjava.security.MessageDigest;/***MD5加密工具类*@authorpibigstar**/publicclassMyMD5Util{//盐,用于混交md5privatestaticfinalStringsl…

大家好,又见面了,我是你们的朋友全栈君。

1 原生的

package com.pibigstar.common.utils;

import java.security.MessageDigest;

/** * MD5加密工具类 * @author pibigstar * */
public class MyMD5Util { 
   
	//盐,用于混交md5
	private static final String slat = "&%5123***&&%%$$#@";
	public static String encrypt(String dataStr) { 
   
		try { 
   
			dataStr = dataStr + slat;
			MessageDigest m = MessageDigest.getInstance("MD5");
			m.update(dataStr.getBytes("UTF8"));
			byte s[] = m.digest();
			String result = "";
			for (int i = 0; i < s.length; i++) { 
   
				result += Integer.toHexString((0x000000FF & s[i]) | 0xFFFFFF00).substring(6);
			}
			return result;
		} catch (Exception e) { 
   
			e.printStackTrace();
		}

		return "";
	}

}

2 使用Spring中的工具类

package com.pibigstar.common.utils;

import org.springframework.util.DigestUtils;

import com.pibigstar.common.Constant;

/** * MD5工具类 * @author pibigstar * */
public class MD5Util { 
   
	//盐,用于混交md5
	private static final String slat = "&%5123***&&%%$$#@";
	/** * 生成md5 * @param seckillId * @return */
	public static String getMD5(String str) { 
   
		String base = str +"/"+slat;
		String md5 = DigestUtils.md5DigestAsHex(base.getBytes());
		return md5;
	}

}


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/156731.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 索引(优缺点)

    索引(优缺点)一、索引概念在关系数据库中,索引是一种单独的、物理的,对数据库表中一列或多列的值进行排序的一种存储结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。二、索引的优点1、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。2、可以大大加快数据的检索速度,这也是创建索引…

  • 程序员:我终于知道post和get的区别

    程序员:我终于知道post和get的区别是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎

  • Spring整合Sharding-JDBC分库分表详情

    Spring整合Sharding-JDBC分库分表详情Spring整合Sharding-JDBC分库分表详情一、概述最初线上系统的业务量不是很大,业务数据量并不大,比如说单库的数据量在百万级别以下(事实上千万级别以下都还能支撑),那么MySQL的单库即可完成任何增/删/改/查的业务操作。随着业务的发展,单个DB中保存的数据量(用户、订单、计费明细和权限规则等数据)呈现指数级增长,那么各种业务处理操作都会面临单DB的IO读写瓶颈带来的性能问题。S…

  • VBScript教程-第二章. 运行脚本

    VBScript教程-第二章. 运行脚本因为过年,一直没有更新教程.发现按照这个进度得下个世纪能完成我这宏伟的小计划,所以最近我会加快进度.好多人问我学习方法,其实真的是学习没有捷径.最后说一句,学习脚本最好准备一份帮助文档,vbs就下载script56.chm这个文件就行了.=========================万恶的分割线后开始正题=====================…

  • Spring StoredProcedure Cursor 使用

    Spring StoredProcedure Cursor 使用JavaCodeimportjava.sql.ResultSet;importjava.sql.SQLException;importjava.text.DateFormat;importjava.text.SimpleDateFormat;importjava.util.HashMap;importjava.util.List;importjava.util.

  • Docker 启动redis镜像

    Docker 启动redis镜像查看本地所有容器:dockerps-a查看本地运行中的容器:dockerps查看所有镜像:dockerimagesdaocker启动redis镜像同时设置密码:dockerrun-d–nameredis1-p6379:6379redis–requirepass“gs123456”参数解释:-d:后台运行-name为容器的名字-p端口映射–requirepass:redis密码redis为镜像名…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号