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

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中的应用-腾讯云开发者社区-腾讯云

相关推荐
张较瘦_40 分钟前
[论文阅读] 软件工程 | 告别“线程安全玄学”:基于JMM的Java类静态分析,CodeQL3分钟扫遍GitHub千仓错误
java·论文阅读·安全
A尘埃3 小时前
智慧零售全渠道业务中台系统
java·零售
小wanga6 小时前
C++知识
java·开发语言·c++
我是渣哥6 小时前
Java String vs StringBuilder vs StringBuffer:一个性能优化的探险故事
java·开发语言·jvm·后端·算法·职场和发展·性能优化
工一木子6 小时前
深入Java并发:锁机制原理剖析与性能优化实战
java·性能优化·并发·
你我约定有三6 小时前
java--写在 try 中的创建连接
java·开发语言
ERP老兵-冷溪虎山6 小时前
Python/JS/Go/Java同步学习(第三篇)四语言“切片“对照表: 财务“小南“纸切片术切凭证到崩溃(附源码/截图/参数表/避坑指南/老板沉默术)
java·javascript·python·golang·中医编程·四语言同步学习·职场生存指南
科技树支点6 小时前
无GC的Java创新设计思路:作用域引用式自动内存管理
java·python·go·web·编程语言·编译器
码农小伙6 小时前
ConcurrentHashMap解析
java·开发语言