Jmeter书中不会教你的(40)——在beanshell中引入java文件

        上一节中讲了在beanshell中直接写java代码使用,如果开发人员跟你说有个现成的处理逗号双引号的方法,你只需要把要处理的字符串传给他就行了,那咋整?

        今天要说的一种方法是开发人员可以直接提供这个方法的java文件,我们在beanshell中引入这个java文件就可以调用他的方法了。

        比如说上一节中这个处理逗号双引号的方法,在eclipse中新建一个名为specialProcess的java文件,默认class就是这个名字,在这个类下编写一个名为specialPr的方法,接收参数为pd

 有了这个java文件,我们在beanshell中进行加载,通过beanshell的关键字source加载源码,source(),括号中可以是绝对路径也可以是相对路径,不知道的同学可以去参考

Jmeter书中不会教你的(35)——相对路径和绝对路径_agrapea的博客-CSDN博客

source("specialProcess.java");

加载好源文件后可以直接使用   类名.方法名(参数),将处理后的字符串赋值给新的变量,用新的变量值写入csv文件

String pd1=specialProcess.specialPr("${priceDetail_1}");

完整代码如下,大家可以和上一节中直接写方法的对比下,多思考想要解决什么问题,再去找解决方案


//在beanshell中引入本地java文件
//通过beanshell的关键字source加载源码
source("specialProcess.java");



//定义一个写入csv文件的地址
//String filePath1 = "D://xntest//result.csv";
String filePath1 ="${filePath1}";
//创建类对象sp
//specialProcess sp=new specialProcess();
//String pd1=sp.specialProcess("${priceDetail_1}");
//String pd2=sp.specialProcess("${priceDetail_2}");


String pd1=specialProcess.specialPr("${priceDetail_1}");
String pd2=specialProcess.specialPr("${priceDetail_2}");




//创建写入对象
FileWriter fw=new FileWriter(filePath1,true);
BufferedWriter bw=new BufferedWriter(fw);
//读取csv文件字段值,写入result.csv,逗号表示字段间的分隔符,需要用英文逗号
bw.write("${originprovince}"+",");
bw.write("${origincity}"+",");
bw.write("${origindistrict}"+",");
bw.write("${destprovince}"+",");
bw.write("${descity}"+",");
bw.write("${desdistrict}"+",");


//将查询时效的提取值写入
bw.write("${reachTime_1}"+",");
//bw.write("${priceDetail_1}"+",");
bw.write(pd1+",");
bw.write("${reachTime_2}"+",");
//最后一个字段写入后需要用换行符\n
//bw.write("${priceDetail_2}"+"\n");
bw.write(pd2+"\n");
bw.flush();
fw.close();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

agrapea

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值