java项目打包成jar包,并给jmeter使用

发布于:2025-06-22 ⋅ 阅读:(19) ⋅ 点赞:(0)

1.新建项目

编写代码,导入必要的jar包,

右键点击项目,然后export,选择main函数,

package utils;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.Random;

import com.github.javafaker.Faker;

public class GenerateId {
    
    public static void main(String[] args) {
        System.out.println(getEepidNumber());
    }
    
    public static String getEepidNumber() {
        SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
        String formatStr = dateFormat.format(new Date());
        
        System.out.println(formatStr);
        String HMS = formatStr.replace(":", "").trim();
        System.out.println(HMS);
        Faker faker = new Faker(new Locale("en", "US"));
        String newValue = "CB" + HMS + faker.regexify("[0-9]{1}");
        System.out.println(newValue);
        return newValue;
    }
    
    public static String generateChinaId() {
        int year =1970 +new Random().nextInt(30);
        int month =1 +new Random().nextInt(12);
        int day =1 +new Random().nextInt(28);
        String randomBirthday=String.format("%04d%02d%02d", year, month, day);
        
        int order =1000 +new Random().nextInt(8999);
        String randomOrder=String.valueOf(order);
        
        return "440981"+randomBirthday+randomOrder;
    }
    public static String generateHKID() {
        String prefix = generateOneCharacter();
        String serial = generate6Number();
        String r = generateValidate(prefix, serial);
        return r;
    }

    public static String generateOneCharacter() {
        Random random = new Random();
        char upperCaseLetter = (char) ('A' + random.nextInt(26)); // 生成一个大写字母 'A'-'Z'
        return upperCaseLetter+"";
    }
    

    public static String generate6Number() {
        int min = 100000;
        int max = 999999;
        int a  = (int) (Math.random()*(max-min +1)) + 100000;
        return ""+a;
    }
    
    public static String generateValidate(String prefix, String serial) {
        String prefixU = prefix.toUpperCase();
        long value = 0;
        if (prefixU.length() == 2) {
            value += (prefixU.charAt(0) - 55) * 9 + (prefixU.charAt(1) - 55) * 8;
        } else if (prefixU.length() == 1) {
            value += 36 * 9 + (prefixU.charAt(0) - 55) * 8;
        }
        for (int i = 0; i < 6; i++) {
            value += Integer.parseInt(serial.substring(i, i + 1)) * (7 - i);
        }
        long reminder = value % 11;
        long validCheckDigit = 11 - reminder;
        String last = "";
        if ( validCheckDigit == 11) {
            last="0";
        }else if ( validCheckDigit == 10) {
            last="A";
        }else {
            last = validCheckDigit+"";
        }
        String result= prefix + serial + "(" + last + ")";
        return result;
    }

}
 

导出的jar包导入到jemeter中

在JSR223 Preprocessor 或者 Bean shell 中导入jar包的class,并调用方法

import utils.GenerateId;
String e = GenerateId.getEepidNumber();
log.info("e: " + e)
 

可以看到返回值

java文件打包成jar包且在jmeter中的应用-腾讯云开发者社区-腾讯云 


网站公告

今日签到

点亮在社区的每一天
去签到