SpringBoot实现Mysql使用MD5进行密码加密的示例
项目开发中为了保护用户隐私安全,一般都会用MD5进行密码加密
以下就简单举例SpringBoot 实现Mysql使用MD5进行密码加密做一个简单的例子
看下数据库,这边简单做了用户表进行测试
pom.xml添加依赖引用
<!--MD5加密 对注册的密码进行加密操作--> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> </dependency> <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-lang3</artifactId> <version>3.8.1</version> </dependency>
创建unit包创建md5加密类,进行密码加密
package com.wyh.unit; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; /** * @date 2021/4/20 23:34 */ public class Md5Utils { /* * md5算法进行密码加密 * */ public static String code(String str){ try{ //1.获取MessageDigest对象 生成一个MD5加密计算摘要 MessageDigest md = MessageDigest.getInstance("MD5") ; /* str.getBytes() * 使用平台的默认字符集将此 String 编码为 byte 序列,并将结果存储到一个新的 byte 数组中. 此方法多用在字节流中,用与将字符串转换为字节。 * */ // 计算md5函数 使用指定的字节数组更新摘要md md.update(str.getBytes()); /* * digest()最后确定返回md5 hash值,返回值为8的字符串。 * 因为md5 hash值是16位的hex值,实际上就是8位的 * */ byte[] byteDigest = md.digest() ; int i ; StringBuffer buf = new StringBuffer("") ; //遍历byteDigest //加密逻辑,可以debug自行了解一下加密逻辑 for(int offset = 0 ; offset<byteDigest.length ; offset++){ i = byteDigest[offset] ; if(i < 0) i += 256 ; if(i < 16) buf.append("0") ; // BigInteger函数则将8位的字符串转换成16位hex值,用字符串来表示;得到字符串形式的hash值 buf.append(Integer.toHexString(i)) ; } return buf.toString() ; }catch (NoSuchAlgorithmException e){ e.printStackTrace(); return null ; } } }
添加页面
<%-- Date: 2021/4/21 Time: 0:04 --%> <%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>添加用户</title> </head> <body> <form action="/addUser" method="post"> 用户名<input type="text" name="username"/><br> 账号<input type="text" name="account"/><br> 密码<input type="password" name="password"/><br> <input type="submit" value="提交"> </form> </body> </html>
Controller添加方法
@RequestMapping("/addUser") public String addUser(User user){ //MD5方法对密码进行加密处理 String password= Md5Utils.code(user.getPassword()) ; user.setPassword(password); int i = userService.addUser(user); if(i>0){ return "redirect:/showAllUser"; } return ""; }
进行添加测试,这边我输入的密码是123456
查看数据库
进行解密可以去:https://www.cmd5.com/
复制数据库的加密密码即可
到此这篇关于SpringBoot实现Mysql使用MD5进行密码加密的示例的文章就介绍到这了,更多相关SpringBoot MD5密码加密内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
Java操作Jenkins操作凭证(Credential)信息方式
这篇文章主要介绍了Java操作Jenkins操作凭证(Credential)信息方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-05-05Java8新特性之Collectors.joining()实例详解
在项目中我们常常要对list集合的数据做一些字符串拼接/处理等相关操作,下面这篇文章主要给大家介绍了关于Java8新特性之Collectors.joining()的相关资料,需要的朋友可以参考下2023-01-01ElasticSearch学习之多条件组合查询验证及示例分析
这篇文章主要为大家介绍了ElasticSearch 多条件组合查询验证及示例分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-02-02
最新评论