跳到主要內容

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



  • sql 語句

  • 語句結尾不需要添加 ; 

  • 變量用 ? 佔位

Parameter values

需要傳遞的變量值,多個變量用 , 分隔

Parameter types

變量類型

Variable Names



  • 保存sql語句返回的數據和返回數據的總行數

  • 用 , 分隔

  • 跳過列用空

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 條數據


 

  本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理



【其他文章推薦】



※帶您來了解什麼是 USB CONNECTOR  ?



※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面



※如何讓商品強力曝光呢? 網頁設計公司幫您建置最吸引人的網站,提高曝光率!



※綠能、環保無空污,成為電動車最新代名詞,目前市場使用率逐漸普及化



※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益



※教你寫出一流的銷售文案?



Orignal From: Jmeter系列(30)- 詳解 JDBC Request

留言

這個網誌中的熱門文章

架構設計 | 異步處理流程,多種實現模式詳解

本文源碼:GitHub·點這裏 || GitEE·點這裏 一、異步處理 1、異步概念 異步處理不用阻塞當前線程來等待處理完成,而是允許後續操作,直至其它線程將處理完成,並回調通知此線程。 必須強調一個基礎邏輯,異步是一種設計理念,異步操作不等於多線程,MQ中間件,或者消息廣播,這些是可以實現異步處理的方式。 同步處理和異步處理相對,需要實時處理並響應,一旦超過時間會結束會話,在該過程中調用方一直在等待響應方處理完成並返回。同步類似電話溝通,需要實時對話,異步則類似短信交流,發送消息之後無需保持等待狀態。 2、異步處理優點 雖然異步處理不能實時響應,但是處理複雜業務場景,多數情況都會使用異步處理。 異步可以解耦業務間的流程關聯,降低耦合度; 降低接口響應時間,例如用戶註冊,異步生成相關信息表; 異步可以提高系統性能,提升吞吐量; 流量削峰即把請求先承接下來,然後在異步處理; 異步用在不同服務間,可以隔離服務,避免雪崩; 異步處理的實現方式有很多種,常見多線程,消息中間件,發布訂閱的廣播模式,其根據邏輯在於先把請求承接下來,放入容器中,在從容器中把請求取出,統一調度處理。 注意 :一定要監控任務是否產生積壓過度情況,任務如果積壓到雪崩之勢的地步,你會感覺每一片雪花都想勇闖天涯。 3、異步處理模式 異步流程處理的實現有好多方式,但是實際開發中常用的就那麼幾種,例如: 基於接口異步響應,常用在第三方對接流程; 基於消息生產和消費模式,解耦複雜流程; 基於發布和訂閱的廣播模式,常見系統通知 異步適用的業務場景,對數據強一致性的要求不高,異步處理的數據更多時候追求的是最終一致性。 二、接口響應異步 1、流程描述 基於接口異步響應的方式,有一個本地業務服務,第三方接口服務,流程如下: 本地服務發起請求,調用第三方服務接口; 請求包含業務參數,和成功或失敗的回調地址; 第三方服務實時響應流水號,作為該調用的標識; 之後第三方服務處理請求,得到最終處理結果; 如果處理成功,回調本地服務的成功通知接口; 如果處理失敗,回調本地服務的失敗通知接口; 整個流程基於部分異步和部分實時的模式,完整處理; 注意 :如...

.NET Core前後端分離快速開發框架(Core.3.0+AntdVue)

.NET Core前後端分離快速開發框架(Core.3.0+AntdVue) 目錄 引言 時間真快,轉眼今年又要過去了。回想今年,依次開源發布了 Colder.Fx.Net.AdminLTE(254Star) 、 Colder.Fx.Core.AdminLTE(335Star) 、 DotNettySocket(82Star) 、 IdHelper(47Star) ,這些框架及組件都是本着以實際出發,實事求是的態度,力求提高開發效率(我自己都是第一個使用者),目前來看反響不錯。但是隨着前端和後端技術的不斷變革,尤其是前端,目前大環境已經是前後端完全分離為主的開發模式,在這樣的大環境和必然趨勢之下,傳統的MVC就顯得有些落伍了。在這樣的背景下,一款前後端分離的.NET開發框架就顯得尤為必要,由此便定了框架的升級目標: 前後端分離 。 首先後端技術的選擇,從目前的數據來看,.NET Core的發展遠遠快於.NET Framework,最簡單的分析就是Colder.Fx.Core.AdminLTE發布比Colder.Fx.Net.AdminLTE晚,但是星星卻後來居上而且比前者多30%,並且這個差距在不斷擴大,由點及面的分析可以看出我們廣大.NET開發人員學習的熱情和积極向上的態度,並不是某些人所認為的那麼不堪( 走自己的路,讓別人說去吧 )。大環境上微軟积極擁抱開源,大力發展.NET Core, 可以說前途一片光明。因此後端決定採用 .NET Core3.0 ,不再浪費精力去支持.NET Framework。 然後是前端技術選擇,首選是三大js框架選擇,也是從實際出發,Vue相對其它而言更加容易上手,並且功能也毫不遜色,深得各種大小公司喜歡,如果偏要說缺點的話,那就是對TS支持不行,但是即將發布Vue3.0肯定會改變這一缺陷。選擇了Vue之後,然後就是UI框架的選擇了,這裏的選擇更多了,我選擇了Ant Design Vue,理由便是簡潔方便,十分符合我的設計理念。 技術選型完畢之後便...

請問一下純電動汽車快充接頭上的PE,CC,CP,NC1,NC2什麼意思呢?

其實不難董,以下是每一個的解釋 1、CP CC代表充電控制和連接檢測,主要是協議線。 2、L是三相輸入U線。 3、NC1是三相輸入V線。 4、NC2是三相輸入W線。 5、N是三項輸入中線。 6、PE代表接地線。 台中電動車     潭子電動車 Orignal From: 請問一下純電動汽車快充接頭上的PE,CC,CP,NC1,NC2什麼意思呢?