- Variable Name:配置元件的的所有配置所保存的变量,自定义变量名称,多个jdbc配置元件可以使用相同的变量,但是只有一个会被jdbc请求使用,这里定义的变量名称会被之后的jdbc请求引用,以此来判断请求使用的是哪个配置元件所定义的数据库配置,必填项,如果不填运行后会报错 Variable Name must not be empty for element:JDBC Connection Configuration
- Connection Pool Configuration 和Connection Validation by Pool 分别是设置数据库连接池配置和针对活动连接的生命周期的设置
- Database URL:数据连接的访问地址
- JDBC Driver class:数据库连接的驱动类
- Username:访问数据库的用户名
- Password:访问数据的密码
- 对于Database URL和JDBC Driver class 不同的数据的链接和驱动类是不同的,可以参照下图
- Variable Name: 选用的配置元件变量,前面已经设置了jdbc配置元件的同名字段,这里需要与配置元件的同名字段相同才能引用配置元件的配置,如果你有多个jdbc配置元件,那么根据不同的sampler选择不同的配置元件,这里填入相对应的jdbc配置元件Variable Name 值即可。
- SQL Query--- Query Type:sql语句类型,下拉框有8个选项,查询语句的话就选Select Statement,更新语句的话就选Update Statement,但是其实不按照这个规则进行的话jmeter这边会报错,但是其实数据库里的值已经操作成功了;如果你要使用图片下方的Parameter values这一块的设置的话,Query Type就需要选择对应的Prepared Select Statement 或者Prepared Update Statement;输入框里输入sql语句
- Parameter values: 参数值,在sql语句里对于参数使用?代替,那么这里的输入框就输入?号所代表的的具体值,如图,多个时使用逗号分隔,比如
- Variable names:sql语句中?所代表的参数变量名称,非必填项,填上有助于与脚本的可读性
- Result Variable name:运行结果保存的变量名称,非必填项,如果设置了以后,运行结果将会以多个map形式的list保存在所设置的变量中,结果中的列名作为map的key值,列的值作为map的value;使用方法columnValue = vars.getObject("resultObject").get(0).get("Column Name");在jdbc请求之后添加BeanShell PostProcessor后置处理器,脚本区域输入脚本内容,如图:
还有一种方式使用jdbc请求的结果保存变量Result values,将BeanShell脚本: columnValue = vars.getObject("res").get(0).get("USERNAME"); return columnValue; 把上面两行内容保存文件为bs.bsh,放在jmeter的bin目录下,使用jmeter自带的__BeanShell函数接收返回值,如${__BeanShell(source("bs.bsh"))}