package md5package;

import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException; public class String2md5 { public static void main(String args[]) {
String aaa=StringToMd5("abc"); if(aaa.equals("900150983cd24fb0d6963f7d28e17f72"))
System.out.println("MD5加密后的值是:"+aaa);
else
System.out.println("-----sorry-"+aaa); } public static String StringToMd5(String psw) {
{
try {
MessageDigest md5 = MessageDigest.getInstance("MD5");
md5.update(psw.getBytes("UTF-8"));
byte[] encryption = md5.digest(); StringBuffer strBuf = new StringBuffer();
for (int i = 0; i < encryption.length; i++) {
if (Integer.toHexString(0xff & encryption[i]).length() == 1) {
strBuf.append("0").append(Integer.toHexString(0xff & encryption[i]));
} else {
strBuf.append(Integer.toHexString(0xff & encryption[i]));
}
} return strBuf.toString();
} catch (NoSuchAlgorithmException e) {
return "";
} catch (UnsupportedEncodingException e) {
return "";
}
}
} }

  找了一下,目前Jmeter4.0版本中已经默认自带这个md5方法了,源码如下:

//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by Fernflower decompiler)
// package org.apache.commons.codec.digest; import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.nio.ByteBuffer;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import org.apache.commons.codec.binary.Hex;
import org.apache.commons.codec.binary.StringUtils; public class DigestUtils {
private static final int STREAM_BUFFER_LENGTH = 1024;
private final MessageDigest messageDigest; public static byte[] digest(MessageDigest messageDigest, byte[] data) {
return messageDigest.digest(data);
} public static byte[] digest(MessageDigest messageDigest, ByteBuffer data) {
messageDigest.update(data);
return messageDigest.digest();
} public static byte[] digest(MessageDigest messageDigest, File data) throws IOException {
return updateDigest(messageDigest, data).digest();
} public static byte[] digest(MessageDigest messageDigest, InputStream data) throws IOException {
return updateDigest(messageDigest, data).digest();
} public static MessageDigest getDigest(String algorithm) {
try {
return MessageDigest.getInstance(algorithm);
} catch (NoSuchAlgorithmException var2) {
throw new IllegalArgumentException(var2);
}
} public static MessageDigest getDigest(String algorithm, MessageDigest defaultMessageDigest) {
try {
return MessageDigest.getInstance(algorithm);
} catch (Exception var3) {
return defaultMessageDigest;
}
} public static MessageDigest getMd2Digest() {
return getDigest("MD2");
} public static MessageDigest getMd5Digest() {
return getDigest("MD5");
} public static MessageDigest getSha1Digest() {
return getDigest("SHA-1");
} public static MessageDigest getSha256Digest() {
return getDigest("SHA-256");
} public static MessageDigest getSha384Digest() {
return getDigest("SHA-384");
} public static MessageDigest getSha512Digest() {
return getDigest("SHA-512");
} /** @deprecated */
@Deprecated
public static MessageDigest getShaDigest() {
return getSha1Digest();
} public static byte[] md2(byte[] data) {
return getMd2Digest().digest(data);
} public static byte[] md2(InputStream data) throws IOException {
return digest(getMd2Digest(), data);
} public static byte[] md2(String data) {
return md2(StringUtils.getBytesUtf8(data));
} public static String md2Hex(byte[] data) {
return Hex.encodeHexString(md2(data));
} public static String md2Hex(InputStream data) throws IOException {
return Hex.encodeHexString(md2(data));
} public static String md2Hex(String data) {
return Hex.encodeHexString(md2(data));
} public static byte[] md5(byte[] data) {
return getMd5Digest().digest(data);
} public static byte[] md5(InputStream data) throws IOException {
return digest(getMd5Digest(), data);
} public static byte[] md5(String data) {
return md5(StringUtils.getBytesUtf8(data));
} public static String md5Hex(byte[] data) {
return Hex.encodeHexString(md5(data));
} public static String md5Hex(InputStream data) throws IOException {
return Hex.encodeHexString(md5(data));
} public static String md5Hex(String data) {
return Hex.encodeHexString(md5(data));
} /** @deprecated */
@Deprecated
public static byte[] sha(byte[] data) {
return sha1(data);
} /** @deprecated */
@Deprecated
public static byte[] sha(InputStream data) throws IOException {
return sha1(data);
} /** @deprecated */
@Deprecated
public static byte[] sha(String data) {
return sha1(data);
} public static byte[] sha1(byte[] data) {
return getSha1Digest().digest(data);
} public static byte[] sha1(InputStream data) throws IOException {
return digest(getSha1Digest(), data);
} public static byte[] sha1(String data) {
return sha1(StringUtils.getBytesUtf8(data));
} public static String sha1Hex(byte[] data) {
return Hex.encodeHexString(sha1(data));
} public static String sha1Hex(InputStream data) throws IOException {
return Hex.encodeHexString(sha1(data));
} public static String sha1Hex(String data) {
return Hex.encodeHexString(sha1(data));
} public static byte[] sha256(byte[] data) {
return getSha256Digest().digest(data);
} public static byte[] sha256(InputStream data) throws IOException {
return digest(getSha256Digest(), data);
} public static byte[] sha256(String data) {
return sha256(StringUtils.getBytesUtf8(data));
} public static String sha256Hex(byte[] data) {
return Hex.encodeHexString(sha256(data));
} public static String sha256Hex(InputStream data) throws IOException {
return Hex.encodeHexString(sha256(data));
} public static String sha256Hex(String data) {
return Hex.encodeHexString(sha256(data));
} public static byte[] sha384(byte[] data) {
return getSha384Digest().digest(data);
} public static byte[] sha384(InputStream data) throws IOException {
return digest(getSha384Digest(), data);
} public static byte[] sha384(String data) {
return sha384(StringUtils.getBytesUtf8(data));
} public static String sha384Hex(byte[] data) {
return Hex.encodeHexString(sha384(data));
} public static String sha384Hex(InputStream data) throws IOException {
return Hex.encodeHexString(sha384(data));
} public static String sha384Hex(String data) {
return Hex.encodeHexString(sha384(data));
} public static byte[] sha512(byte[] data) {
return getSha512Digest().digest(data);
} public static byte[] sha512(InputStream data) throws IOException {
return digest(getSha512Digest(), data);
} public static byte[] sha512(String data) {
return sha512(StringUtils.getBytesUtf8(data));
} public static String sha512Hex(byte[] data) {
return Hex.encodeHexString(sha512(data));
} public static String sha512Hex(InputStream data) throws IOException {
return Hex.encodeHexString(sha512(data));
} public static String sha512Hex(String data) {
return Hex.encodeHexString(sha512(data));
} /** @deprecated */
@Deprecated
public static String shaHex(byte[] data) {
return sha1Hex(data);
} /** @deprecated */
@Deprecated
public static String shaHex(InputStream data) throws IOException {
return sha1Hex(data);
} /** @deprecated */
@Deprecated
public static String shaHex(String data) {
return sha1Hex(data);
} public static MessageDigest updateDigest(MessageDigest messageDigest, byte[] valueToDigest) {
messageDigest.update(valueToDigest);
return messageDigest;
} public static MessageDigest updateDigest(MessageDigest messageDigest, ByteBuffer valueToDigest) {
messageDigest.update(valueToDigest);
return messageDigest;
} public static MessageDigest updateDigest(MessageDigest digest, File data) throws IOException {
BufferedInputStream stream = new BufferedInputStream(new FileInputStream(data)); MessageDigest var3;
try {
var3 = updateDigest(digest, (InputStream)stream);
} finally {
stream.close();
} return var3;
} public static MessageDigest updateDigest(MessageDigest digest, InputStream data) throws IOException {
byte[] buffer = new byte[1024]; for(int read = data.read(buffer, 0, 1024); read > -1; read = data.read(buffer, 0, 1024)) {
digest.update(buffer, 0, read);
} return digest;
} public static MessageDigest updateDigest(MessageDigest messageDigest, String valueToDigest) {
messageDigest.update(StringUtils.getBytesUtf8(valueToDigest));
return messageDigest;
} public static boolean isAvailable(String messageDigestAlgorithm) {
return getDigest(messageDigestAlgorithm, (MessageDigest)null) != null;
} /** @deprecated */
@Deprecated
public DigestUtils() {
this.messageDigest = null;
} public DigestUtils(MessageDigest digest) {
this.messageDigest = digest;
} public DigestUtils(String name) {
this(getDigest(name));
} public MessageDigest getMessageDigest() {
return this.messageDigest;
} public byte[] digest(byte[] data) {
return updateDigest(this.messageDigest, data).digest();
} public byte[] digest(String data) {
return updateDigest(this.messageDigest, data).digest();
} public byte[] digest(ByteBuffer data) {
return updateDigest(this.messageDigest, data).digest();
} public byte[] digest(File data) throws IOException {
return updateDigest(this.messageDigest, data).digest();
} public byte[] digest(InputStream data) throws IOException {
return updateDigest(this.messageDigest, data).digest();
} public String digestAsHex(byte[] data) {
return Hex.encodeHexString(this.digest(data));
} public String digestAsHex(String data) {
return Hex.encodeHexString(this.digest(data));
} public String digestAsHex(ByteBuffer data) {
return Hex.encodeHexString(this.digest(data));
} public String digestAsHex(File data) throws IOException {
return Hex.encodeHexString(this.digest(data));
} public String digestAsHex(InputStream data) throws IOException {
return Hex.encodeHexString(this.digest(data));
}
}

  Jmeter要如何引用呢

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

String str = "abc";
String str2 = "测试"; String sign = DigestUtils.md5Hex(str);
String sign2 = DigestUtils.md5Hex(str2);
String random = str;
String random2 = str2; vars.put("sign_str",sign.toUpperCase());
vars.put("random",random); vars.put("sign_str",sign2.toUpperCase());
vars.put("random",random2);

  

Java语言编写MD5加密方法,Jmeter如何给字符串MD5加密的更多相关文章

  1. Atiitt 使用java语言编写sql函数或存储过程

    Atiitt 使用java语言编写sql函数或存储过程 1.1. java编写sql函数或存储过程的机制1 1.2. Java编写sp的优点1 1.3. 支持java源码,class文件,blog f ...

  2. Fastjson是一个Java语言编写的高性能功能完善的JSON库。

    简介 Fastjson是一个Java语言编写的高性能功能完善的JSON库. 高性能 fastjson采用独创的算法,将parse的速度提升到极致,超过所有json库,包括曾经号称最快的jackson. ...

  3. 使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网)

    使用Java语言编写一个五子棋UI界面并实现网络对战功能(非局域网) 一,前期准备 1,Java IDE(Eclipse)与JDK的安装与配置jdk-15.0.1-免配置路径版提取码:earu免安装版 ...

  4. 使用java语言编写窗口按钮

    使用java语言编写窗口按钮 代码如下: package Day08; import java.awt.FlowLayout; import javax.swing.JButton;import ja ...

  5. java语言规范,main方法必须声明为public

    注释: 根据java语言规范,main方法必须声明为public. 当main方法不是public时,有些版本的java解释器也可以执行java应用程序.有个程序员报告了这个bug. 如果感兴趣可以查 ...

  6. 第二次作业利用java语言编写计算器进行四则运算

    随着第一次作业的完成,助教 牛老师又布置了第二次作业:用java语言编写一个程序然后进行四则运算用户用键盘输入一个字符来结束程序显示统计结果.一开始看到这个题目我也着实吓了一跳 因为不知道如何下手而且 ...

  7. 用Java语言编写一个简易画板

    讲了三篇概博客的概念,今天,我们来一点实际的东西.我们来探讨一下如何用Java语言,编写一块简易的画图板. 一.需求分析 无论我们使用什么语言,去编写一个什么样的项目,我们的第一步,总是去分析这个项目 ...

  8. java语言编写矩阵的四则运算

    题目要求如下: 设计程序实现矩阵的四则运算 设计要求: (1) 实现矩阵的四则运算. (2) 考虑实现带变元的矩阵计算. (3)考虑实现矩阵的特征值和特征向量的计算. 我使用java语言写的 目录结构 ...

  9. java基础知识回顾之---java String final类普通方法的应用之字符串数组排序

    /* * 1,给定一个字符串数组.按照字典顺序进行从小到大的排序. * {"nba","abc","cba","zz", ...

随机推荐

  1. Word Add-in 函数调用顺序

    这个图表明的函数的调用顺序,主要代码如下: // MyAddin.cpp : Implementation of DLL Exports. // Note: Proxy/Stub Informatio ...

  2. Android APP安装后不在桌面显示图标的应用场景举例和实现方法

    最近在为公司做一款车联网的产品,由于公司本身擅长于汽车解码器的研发,所以该产品的诊断功能的实现除了使用目前市面上车联网产品中大量使用的OBD协议外,还会使用一些专车专用协议去实现一些特殊的诊断功能,如 ...

  3. [LeetCode] 438. Find All Anagrams in a String_Easy

    438. Find All Anagrams in a String DescriptionHintsSubmissionsDiscussSolution   Pick One Given a str ...

  4. oracle怎么恢复被覆盖的存储过程

    在oracle数据库中,如果覆盖了之前的存储过程,那得赶紧闪回,时长越长闪回的可能性越小. 原理很简单,存储过程的定义就是数据字典,修改数据字典跟修改普通表的数据没有区别,此时会把修改前的内容放到un ...

  5. 3:2 OGNL 简介

    OGNL : (对象图导航语言) 从一个对象到另一个对象 OGNL来源于Xwork: OGNL的作用: OGNL在数据进出值栈的时候进行类型转换

  6. 《Convolutional Neural Networks for Sentence Classification》 文本分类

    文本分类任务中可以利用CNN来提取句子中类似 n-gram 的关键信息. TextCNN的详细过程原理图见下: keras 代码: def convs_block(data, convs=[3, 3, ...

  7. Sa身份登陆SQL SERVER失败的解决方案

    经常使用windows身份登陆,久而久之,基本不动怎么用SQL SERVER身份验证登陆,所以趁着有空,就解决一下一些问题~~ 解决方案:  第一步:打开SSMS,先使用windows身份登陆,右击服 ...

  8. Kotlin语言Web库又添一虎将:Kweb

    Kweb是一个库,您可以利用它使用Kotlin编程语言轻松构建Web应用程序.从程序员的角度来看,它基本上消除了浏览器和服务器之间的分离.这意味着只操纵DOM的事件不需要进行服务器往返.由于Kweb是 ...

  9. web前端----jQuery动画效果

    动画效果 // 基本 show([s,[e],[fn]]) hide([s,[e],[fn]]) toggle([s],[e],[fn]) // 滑动 slideDown([s],[e],[fn]) ...

  10. torch7入门(安装与使用)

    http://blog.csdn.net/real_myth/article/details/52291636 1.安装与使用 测试系统是ubuntu14.04LTS,默认安装在-/torch,当然我 ...