Jmeter用BeanShell Sampler調用java寫的jar包進行MD5加密

【前言】

在工做中,有時候咱們請求的參數可能須要加密,好比登陸接口中的密碼作了加密操做,今天我就給你們介紹一種方法:Jmeter用BeanShell Sampler調用java寫的jar包進行MD5加密。java

【正文】

1.咱們首先在Eclipse裏面寫好MD5的加密文件,用Eclipse執行一遍,確保程序調用不會報錯。app

Eclipse展現圖:函數

 

Str2MD5.java 代碼:加密

 1 package com.md5;
 2 
 3 import java.security.MessageDigest;
 4 import java.security.NoSuchAlgorithmException;
 5 
 6 public class Str2MD5 {
 7     
 8     public String MD5(String sourceStr) {
 9         String result = "";
10         try {
11             MessageDigest md = MessageDigest.getInstance("MD5");
12             md.update(sourceStr.getBytes());
13             byte b[] = md.digest();
14             int i;
15             StringBuffer buf = new StringBuffer("");
16             for (int offset = 0; offset < b.length; offset++) {
17                 i = b[offset];
18                 if (i < 0)
19                     i += 256;
20                 if (i < 16)
21                     buf.append("0");
22                 buf.append(Integer.toHexString(i));
23             }
24             result = buf.toString();
25             System.out.println("MD5(" + sourceStr + ",32) = " + result);
26          //   System.out.println("MD5(" + sourceStr + ",16) = " + buf.toString().substring(8, 24));
27         } catch (NoSuchAlgorithmException e) {
28             System.out.println(e);
29         }
30         return result;
31     }
32 }

 

2.寫好這個類以後,再寫一個test類調用一下這個方法:spa

Eclipse展現圖:3d

 

Test.java代碼以下:code

1 package com.md5;
2 
3 public class test {
4 
5     public static void main(String[] args) {
6         String reString = new Str2MD5().MD5("suneee1234");
7         System.out.println(reString);
8     }
9 }

 

3.將文件導出爲jar包,並放到 Jmeter的lib/ext文件目錄下blog

選擇整個包,點擊Export:接口

 

選擇Java —> JAR file:ip

 

勾選導出內容,給導出的文件命名,點擊Finish:

 

導出成功後,文件會生成在你這個Eclipse的工做空間中(在第一次打開Eclipse,會選擇一個工做空間,用來存儲文件)

 

找到你本身Jmeter目錄下的lib\ext,將這個jar包複製粘貼進去:

 

4.在Jmeter裏面調用這個jar包

 

BeanShell Sampler 代碼以下:

1 import com.md5.Str2MD5;
2 String res = new Str2MD5().MD5("suneee1234");
3 System.out.println(res);
4 props.put("md5",res.toString());

 

運行結果:

上面就是Jmeter用BeanShell Sampler調用java寫的jar包進行MD5加密全過程!

至於還有一種方法網上說是直接調用MD5函數,可是我實在沒有找到,是否是我版本過高了?尷尬......

相關文章
相關標籤/搜索