欢迎来到代码驿站!

JAVA代码

当前位置:首页 > 软件编程 > JAVA代码

Java后端实现MD5加密的方法

时间:2021-05-09 07:47:08|栏目:JAVA代码|点击:

前言

在我们开发是要考虑这个功能,当用户忘记密码的情况下,我们需要动态的发给他一个6位的随机密码,通过即时通,短信,微信等。并同时修改数据库中的原密码为这6位的随机密码。让用户再去修改密码。

同时在数据库中的密码必须存为密文,于是需要使用到MD5加密。生成的6位随机密码需要保密,不能在前台处理,只能放在后端。于是我选择放在了控制层中

示例代码

//传入任何需要加密的文本进行加密
public static String getMd5(String string) {
  try {
 MessageDigest md = MessageDigest.getInstance("MD5");
 md.update(string.getBytes);
 byte hash = md.digest;
 StringBuffer sb = new StringBuffer;
 int i = 0;
 for (int offset = 0; offset < hash.length; offset++) {
 i = hash[offset];
 if (i < 0) {
 i += 256;
 }
 if (i < 16) {
 sb.append("0");
 }
 sb.append(Integer.toHexString(i));
 }

 return sb.toString;
  }
  catch (NoSuchAlgorithmException e) {
 throw new RuntimeException(e);
  }
 }

此处使用的是32位的加密,16位与32位的区别是16位取的是32位中间的16位。

String PASSWORD_ = String.valueOf((int) (Math.random * 1000000));

 if (empService.updateEmpPassword(EMP_ID_, BaseUtils.getMd5(PASSWORD_), operator) == 0) {
 throw new RuntimeException("随机密码生成失败!");
 }
 String xele = "<SendMessage><AM_Name>" + EMP_CODE_ + "</AM_Name><PhoneNum></PhoneNum><UserId></UserId><MessageTxt>您的公文管理系统新密码是:" + PASSWORD_ + "</MessageTxt><SystemName>公文管理系统</SystemName><Type>即时通</Type><Access></Access><Email></Email><IsBack></IsBack><IsEncrypt></IsEncrypt><ISPriority></ISPriority><Ohter1></Ohter1><Ohter2></Ohter2></SendMessage><br />";

然后调用即时通预留接口

instanceMsgService.AMToMessIFCheck(xele, null, operator);

注意:主要看java后端怎么去做MD5的加密!!

结束语

上一篇:Java虚拟机装载和初始化一个class类代码解析

栏    目:JAVA代码

下一篇:MyEclipse如何取消默认工作空间方法示例

本文标题:Java后端实现MD5加密的方法

本文地址:http://www.codeinn.net/misctech/118145.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有