Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密

参考http://www.javashuo.com/article/p-zavcccqg-kn.html

【前言】

在工做中,有时候咱们请求的参数可能须要加密,好比登陆接口中的密码作了加密操做,今天我就给你们介绍一种方法:Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密。html

【正文】

1.咱们首先在Eclipse里面写好MD5的加密文件,用Eclipse执行一遍,确保程序调用不会报错。java

注意:类和方法命名时不要和jmeter自带的函数助手的同样app

Eclipse展现图函数

 

 

myMd5.java 代码:this

package myMd5;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.util.logging.Level;
import java.util.logging.Logger;
public class myMd5 {加密

  Logger log = Logger.getLogger(this.getClass().getName());
  public String MyMd5(String sourceStr) {
    String result = "";
    // Long timeStamp = System.currentTimeMillis();
    String appkey = "key";
    String key = "key";
    String Strsource =appkey + sourceStr + key;
    System.out.println(Strsource);
    log.log(Level.INFO, Strsource);
    try {
      MessageDigest md = MessageDigest.getInstance("MD5");
      md.update(Strsource.getBytes());
      byte b[] = md.digest();
      int i;
      StringBuffer buf = new StringBuffer("");
      for (int offset = 0; offset < b.length; offset++) {
        i = b[offset];
        if (i < 0)
          i += 256;
        if (i < 16)
          buf.append("0");
        buf.append(Integer.toHexString(i));
      }
    result = buf.toString();
    // System.out.println("MD5(" +Strsource + ",32) = " + result);
    // System.out.println("MD5(" + sourceStr + ",16) = " + buf.toString().substring(8, 24));
    } catch (NoSuchAlgorithmException e) {
    System.out.println(e);
  }
    return result;
  }
}3d

2.写好这个类以后,再写一个test类调用一下这个方法:code

Eclipse展现图:htm

 

 

Test.java代码以下:blog

package myMd5;

import myMd5.myMd5;

public class test {

  public static void main(String[] args) {
    String reString = new myMd5().MyMd5("1557126194208");
    System.out.println(reString);
  }
}

 

3.将文件导出为jar包,并放到 Jmeter的lib/ext文件目录下

选择整个包,点击Export,而后选择Java —> JAR file:

 

 

勾选导出内容,给导出的文件命名,点击Finish:

 

 

导出成功后,文件会生成在你这个Eclipse的工做空间中(在第一次打开Eclipse,会选择一个工做空间,用来存储文件)

 

 

找到你本身Jmeter目录下的lib\ext,将这个jar包复制粘贴进

 

 

4.在Jmeter里面调用这个jar包

5.在Jmeter里面调用这个jar包

 

 

 

BeanShell Sampler 代码以下:

import myMd5.myMd5;
String sign = new myMd5().MyMd5("${date}");
System.out.println(sign);
vars.put("sign",sign);

 

运行结果:

上面就是Jmeter用BeanShell Sampler调用java写的jar包进行MD5加密全过程!

生成时间戳

相关文章
相关标签/搜索