首页 > 其他分享 >008.封装Md5Utils加密工具类

008.封装Md5Utils加密工具类

时间:2022-12-07 22:14:46浏览次数:43  
标签:Md5Utils 封装 String chars source return 008 MD5

1.MD5介绍

 

 

 

 2.使用Commons Codec

2.1  pom.xml

  <!--Apache 加密/解密组件-->
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.15</version>
        </dependency>

2.2   com.imooc.oa.utils下增加Md5Utils.java

package com.imooc.oa.utils;

import org.apache.commons.codec.digest.DigestUtils;

public class Md5Utils {
    /**
     * 对源数据生成MD5摘要
     * @param source 源数据
     * @return MD5摘要
     */
    public static String md5Digest(String source){
        return DigestUtils.md5Hex(source);
    }
    /**
     * 对源数据加盐混淆后生成MD5摘要
     * @param source 源数据
     * @param salt 盐值
     * @return MD5摘要
     */
    public static String md5Digest(String source,Integer salt){
        char[] chars = source.toCharArray();
        for (int i= 0 ; i< chars.length ; i++){
            chars[i] = (char) (chars[i] + salt);
        }
        String target = new String(chars);
        //System.out.println(target);
        String md5 = DigestUtils.md5Hex(target);
        return md5;
    }
}

 

标签:Md5Utils,封装,String,chars,source,return,008,MD5
From: https://www.cnblogs.com/LLL0617/p/16964688.html

相关文章

  • 支付宝支付二次封装
    前言:前面用了第三方支付宝SDK实现了支付,以后我想在别的项目需要用支付宝,也要用到这些代码,那么我可以把它写成一个包,以后直接把这个包拷贝过去就可以了。之前已经将第三方......
  • 006.封装ResponseUtils工具类
    1.封装ResponseUtils(对标准的Code、Message进行设置)packagecom.imooc.oa.utils;importcom.fasterxml.jackson.annotation.JsonInclude;importcom.fasterxml.jackson......
  • vue-router封装结构
    index.js文件importVuefrom'vue'importVueRouterfrom"vue-router"importroutesfrom'./routes'Vue.use(VueRouter)//解決编程式路由住同一地址跳转时......
  • js 加减乘除方法封装(处理精度问题)
    <!DOCTYPEhtml><html><head><metacharset="UTF-8"><title></title><scriptsrc="http://libs.baidu.com/jquery/2.0.0/jquery.js"></script></head><......
  • [c++11新特性]09-chrono的使用与封装
    时间类的简介​时间类的简介​​​duration简介​​​​借助chrono实现的定时器​​​​time_point​​​时间类的封装​​​时间格式化​​​​日期变化​​duration简......
  • vue select组件封装后用v-model
    封装好的组件<styletype="text/css"scoped>.ipt-select-title{color:#6D89AF;flex-shrink:0;font-weight:500;}.ipt-holder{display:flex;f......
  • 300008 混凝土保护层厚度
    <?phpheader('Content-Type:text/html;charset=utf-8');define('ROOT',$_SERVER['DOCUMENT_ROOT']);includeROOT.'/assets/php/head.php';$tit='混凝土保护层厚......
  • vue tinymce富文本编辑器封装
    <template><divstyle="position:relative;"><divstyle="text-align:right;margin-bottom:20px;"><el-popoverplacement="right"wi......
  • 记录--react native 封装人脸 检测、美颜组件
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助本组件目前只能用在ReactNative的iOS端本组件来之实际中的开发需求:可以检测并且标记人脸,实现基本的美......
  • 【ES系列四】——ESjdbc的封装
    一、es的jdbc类-packagecom.yunshi.index.dao.esdb;importorg.apache.log4j.Logger;importorg.elasticsearch.client.transport.TransportClient;importorg.ela......