Jmeter系列(30)- 详解 JDBC Request
如果你想从头学习Jmeter,可以看看这个系列的文章哦
https://www.cnblogs.com/poloyy/category/1746599.html
前言
- JDBC Request 主要是向数据库发送一个 JDBC 请求(sql 语句),并获取返回的数据集
- 它需要和数据库连接池配置(JDBC Connection Configuration)一起使用,可参考此篇博文:https://www.cnblogs.com/poloyy/p/13182706.html
JDBC Request
JDBC Request 界面介绍
字段含义
字段 | 含义 |
Variable Name Bound to Pool |
数据库连接池配置的名称 |
Query Type |
sql 语句的类型 |
SQL Query |
|
Parameter values |
需要传递的变量值,多个变量用 , 分隔 |
Parameter types |
变量类型 |
Variable Names |
|
Result Variable Name |
一个 Object 变量存储所有返回值 |
Query timeout(s) |
超时时间;默认0,代表无限时间 |
Limit ResultSet |
和 limit 类似作用,限制 sql 语句返回结果集的行数 |
Handle ResultSet |
如何定义 callable statements 返回的结果集;默认是存储为字符串 |
后续通过各种栗子来深入理解常用字段的含义
举栗子的前提
需要自己找一个有数据库的数据来练手哦!这里拿的表数据如下哈
只有 sql 语句的栗子
JDBC Request
没啥特别的,平时 sql 怎么写,这里就怎么写
运行结果
参数化的栗子
JDBC Request
运行结果
知识点
- 有几个问号,Parameter value、Parameter type 填写值的数量要保持一致,用,分隔
- 问号其实是占位符,如果学过编程的童鞋应该也知道这种写法,可以避免 SQL 注入的问题
- sql 中使用占位符时,Query Type 必须选择 Prepared Select Statement 或者 Prepared Update Statement
- 我们可以用 Jmeter 变量去赋值,看下面栗子
参数化+变量的栗子
JDBC Request
运行结果
知识点
- 如果在 sql 语句中使用变量,且是字符串类型,需要加上引号(前提是变量值没有加引号),如 '${name}'
- 如果在 Parameter values 中使用变量,且是字符串类型,不需要加上引号,只需要在 Parameter types 里写明为 varchar 即可
使用 Variable Names 的栗子
结构树
JDBC Request
添加一个 Debug Sampler 就知道这个字段有什么作用了
JDBC Request 运行结果
调试取样器运行结果
知识点
- mysql:数据库连接池对象
- a_#、b_#、c_#、d_#:代表行数
- a_1:第 1 行、第 1 列
- b_2:第 2 行、第 2 列
- c_3:第 3 行、第 3 列
- d_3:第 3 行、第 4 列
- 以此类推....
- 一般如果 HTTP 请求需要用到 sql 查出来的数据的话,就会用到 Variable names 这个字段
使用 Result variable name 的栗子
JDBC Request
Debug Sampler 运行结果
知识点
每一行记录是一个元素,该变量是个数组
重点
关于通过 Variable names、Result variable name 获取到的值如何提取,我们将在下一篇文章中详细讲解
使用 Limit ResultSet 的栗子
JDBC Request
运行结果
知识点
- Limit ResultSet 是对 sql 语句返回的结果集限制行数
- limit 10 限制只返回了 10 条数据,然后 Limit ResultSet = 6 限制结果集最终只返回 6 条数据
Jmeter系列(30)- 详解 JDBC Request的更多相关文章
- jmeter 基础功能详解
jmeter 基础功能详解 thread group:包含一组线程,每个线程独立地执行测试计划. sampler:采样器,有多种不同的sample实现,用来发起各种请求,如http请求,jdbc请求, ...
- 反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) C#中缓存的使用 C#操作redis WPF 控件库——可拖动选项卡的TabControl 【Bootstrap系列】详解Bootstrap-table AutoFac event 和delegate的分别 常见的异步方式async 和 await C# Task用法 c#源码的执行过程
反爬虫:利用ASP.NET MVC的Filter和缓存(入坑出坑) 背景介绍: 为了平衡社区成员的贡献和索取,一起帮引入了帮帮币.当用户积分(帮帮点)达到一定数额之后,就会“掉落”一定数量的“帮帮 ...
- 详解JDBC与Hibernate区别
详解JDBC与Hibernate区别 引用地址:http://www.cnblogs.com/JemBai/archive/2011/04/13/2014940.html 刚开始学习JAVA时,认为H ...
- Jmeter常用功能详解
嘻嘻,忙碌的一周,马上就到周四了~明天就是周五了,可以去嗨了! 这几天正式成立了一个微信订阅号,旨在免费帮助需要入门软件测试的小白! 各位走过路过的亲,欢迎订阅哦:扫描二维码即可订阅
- 执行对象Statement、PreparedStatement和CallableStatement详解 JDBC简介(五)
执行对象是SQL的执行者,SQL是“安排好的任务”,执行对象就是“实际工作的人”. 执行对象有三种: Statement.PreparedStatement和CallableStatement,他们都 ...
- PHP输出缓存ob系列函数详解
PHP输出缓存ob系列函数详解 ob,输出缓冲区,是output buffering的简称,而不是output cache.ob用对了,是能对速度有一定的帮助,但是盲目的加上ob函数,只会增加CPU额 ...
- Jmeter 测试计划元素详解
Jmeter 测试计划元素详解 by:授客 QQ:1033553122 由于篇幅问题,采用链接分享的形式,烦请复制以下网址,黏贴到浏览器中打开,下载 http://pan.baidu.com/s/1n ...
- jmeter --响应断言详解
jmeter --响应断言详解 响应断言 :对服务器的响应进行断言校验 (1)应用范围: main sample and sub sample, main sample only , sub-samp ...
- SignalR新手系列教程详解总结(转)
SignalR新手系列教程详解总结 GlobalHost.ConnectionManager.GetHubContext<TodoListHub>() .Clients.Clients(l ...
随机推荐
- RabbitMQ安装(centos7)
本文是作者原创,版权归作者所有.若要转载,请注明出处. 本文RabbitMQ版本为rabbitmq-server-3.7.17,erlang为erlang-22.0.7.请各位去官网查看版本匹配和下载 ...
- 关于ueditor编译器
取消自动保存提示.edui-editor-messageholder.edui-default{ visibility:hidden;} Qiyuwen 1033935470@qq.com
- 【积累】如何优雅关闭SpringBoot Web服务进程
1.使用ps ef查出进程对应的pid. 2.使用kill -15 pid结束进程. 为什么不使用kill -9 pid,个人理解kill -15 pid更优雅,能在结束进程前执行spring容器清理 ...
- Linux (七)权限控制
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1. 概述 Linux需要对登录用户读写执行文件.进入目录.查看增删目录内容等操作进行控制,不能任由用户 ...
- Java实现 LeetCode 785 判断二分图(分析题)
785. 判断二分图 给定一个无向图graph,当这个图为二分图时返回true. 如果我们能将一个图的节点集合分割成两个独立的子集A和B,并使图中的每一条边的两个节点一个来自A集合,一个来自B集合,我 ...
- Java实现 LeetCode 718 最长重复子数组(动态规划)
718. 最长重复子数组 给两个整数数组 A 和 B ,返回两个数组中公共的.长度最长的子数组的长度. 示例 1: 输入: A: [1,2,3,2,1] B: [3,2,1,4,7] 输出: 3 解释 ...
- Java实现 LeetCode 475 供暖器
475. 供暖器 冬季已经来临. 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖. 现在,给出位于一条水平线上的房屋和供暖器的位置,找到可以覆盖所有房屋的最小加热半径. 所以,你的输入将会是房 ...
- Linux 自动挂载与fstab文件修复
/etc/fstab文件 自动挂载就是写入/etc/fstab文件 vi /etc/fstab 其中,第九行是/分区的自动挂载信息,有6个字段 第一字段表示分区的UUID(硬盘通用唯一识别码,使用du ...
- 对LinkedList源码的一些个人理解
由于转行的原因,最近打算开始好好学习,昨天看到了部分的LinkedList源码,并且看了一点数据结构的视频,现总结部分自己的心得体会,以供后期给现在的自己拍砖~ 双向链表每一个元素都有数据本身加指向前 ...
- REDIS主从频繁切换事件排查
目录 前言 现象 排查 结论 redis主从配置注意点 前言 目前生产配置了2台redis一主一从1.193和12.6,和3个哨兵.1.193,3.10,12.6,搭建的redis高可用环境.突然发生 ...