JMeter获取jdbc请求数据,并在spring service how-to中发送每个http post请求

时间:2014-02-12 22:30:15

标签: jdbc jmeter http-request-parameters

我最近使用了jmeter,我尝试从jdbc请求中获取一些数据,然后在带有http请求的spring服务中发送它们。

让我更具体地解释一下。

我使用此查询:

SELECT MEMBER_ID, 
       PERSON_NAME, 
       PERSON_SURNAME 
FROM MEMBER, 
     PERSON 
WHERE CDT_MEMBER_ID = CDT_PERSON_ID

从上面的请求中插入这些变量中的值:id,name,surname,我已在JDBC请求控制面板的“变量名称”字段中定义。 (在每个变量中返回10个值,所以我将它们视为数组)

然后我使用“For each”控制器试图循环进入值,但我不能。 进入“For each”控制器面板,如果我设置为“输入变量前缀”(例如)id和“输出变量名称”变量,循环正常工作,然后使用内部http请求发送${variable}在春季服务。

但我想每次都发一行作为字符串(id [i] + name [i] + surname [i])。怎么办呢?

我还尝试编写一些脚本来使用beanshell预处理器定义此字符串,但没有任何效果。

1 个答案:

答案 0 :(得分:1)

好的,据我所知,我必须在“JDBC Request”和“ForEach Controller”之间使用“BeanShell Sampler”。 然后使用beanShell脚本我获取数组的长度,脚本:

Integer x = Integer.parseInt(vars.get(dataId_#)); 

在for循环中,我将数据插入String数组中,如下所示:

String[] dataArray = new String[x];
for (i = 0; i < x; i++) {
vars.put("dataArray_" + i, vars.get("dataId_" + i) + " " + vars.get("name_" + i) + " " + vars.get("surname_" + i));
}