jmeter之JDBC類元件

博無止境發表於2021-08-11

~什麼是JDBC?:全稱名為Java DataBase Connectivity,(java資料庫連線),在jmeter中是一種可以遠端運算元據庫的一類元件。

~jmeter如何運算元據庫?:jmeter是一款java應用,一般都是通過JDBC方式來實現;

  *準備工作:jmeter運算元據庫需要JDBC驅動包,但下載的jmeter本身沒有提供任何的JDBC驅動包,需要另外下載。

  *JDBC獲取途徑:可以找開發,可以去官網下載(地址:https://dev.mysql.com/downloads/connector/j/),需要注意的是,如果你是做效能測試的,JDBC的驅動包版本一定要下對,否則效能的瓶頸原因可能就出現版本號不一致上。如果是自動化,下載的驅動包版本比你資料庫版本高即可,低於的話可能會導致連線報錯。

  *如何安裝驅動包?請檢視該篇文章:https://www.cnblogs.com/FBGG/p/11758565.html

 

~jmeter中和資料操作有關的元件幾個?他們的作用是什麼?:四個,作用如下

  *JDBC Connection Configuration:(JDBC連線配置)元件,屬於必選元件。當需要連線多個庫時,可以新增多個。新增路徑(配置元件)>(JBDC Connection Configuration)

  *JDBC Request:(JDBC請求),用於輸入sql資料運算元據庫。路徑(執行緒組)(取樣器)>(JDBC Request)

  *JDBC PreProcessor:(JDBC前處理器),功能與JDBC Request類似,只不過這是在執行請求之前執行。路徑(前置處理器)>(JDBC PreProcessor)

  *JDBC PostProcessor:(JDBC後處理器),功能與JDBC Request類似,只不過這是在執行請求之後執行。路徑(後置處理器)>(JDBC PostProcessor)

 

~JDBC Connection Configuration 配置講解?: 新增路徑(配置元件)>(JBDC Connection Configuration)

  *Variable Name:(變數名稱),用來儲存連線配置資訊,後續的JDBC請求,JDBC前、後置處理器都需要用到。建議格式(庫名_主機ip:TestJdbc_192)

  *connestion Pool Configuration:(連線池配置),這塊資訊之和效能測試有關,一般不用操作,在此不作深度解析。

  *connestion Validation by pool:(連線池驗證),有用的只有Validation Query(驗證查詢),這個直接選,一般mysql就選select 1

  *JDBC Connection Configuration:(JDBC連線配置)資訊(重點)

    *Database URL:資料庫的URL地址,不同型別的資料庫JDBC的URL寫法是不一樣的。可以從官網檢視每個不同資料庫的配置方法

 

 

分割線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    *JDBC Driver class:JDBC驅動類的路徑。不同資料庫的驅動類不一樣,需要根據自身情況選擇。這個路徑從哪裡來呢?請看下圖

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 分割線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

  *Username:使用者名稱。資料庫的使用者名稱,這個不多說了,複製貼上就行

  *Password:密碼。資料庫的密碼。,這個不多說了,複製貼上就行

 

 

 

 

~JDBC Request  配置講解:路徑(執行緒組)(取樣器)>(JDBC Request)

   *Variable Name......:該處填寫的是在JBDC Connection Configuration 中所定義的變數名稱,表示使用對應的JDBC 資料庫連線配置。(因為JBDC Connection Configuration可以是多個,想連哪個就使用哪個變數名)

  *Query Type:請求型別,要求實際執行的SQL和所選的Query Type(請求型別)一致。可選的值和描述如下

    *Select statement:select型別,對應可執行的SQL關鍵字有(select),也就是隻能使用這些關鍵字進行運算元據庫

    *Updata Statement:updata型別,對應可執行的SQL關鍵字有(create、drop、alter:針對表結構調整)(install、delet、updata:針對表資料調整),也就是隻能使用這些關鍵字進行運算元據庫

    *Callable Statement:Callable型別,支援所有的關鍵字,主要用於儲存過程的呼叫。對應可執行的關鍵字有,可以認為是call,所有。也就是所有型別的sql語句都支援

    *Prepared Select statement:前置select型別,又叫批量select型別。對應可執行的SQL關鍵字和Select statement完成一樣。

    *Prepared updata statement:前置select型別,又叫批量updata型別。對應可執行的SQL關鍵字和Updata statement完成一樣。

    PS:(Prepared Select statement)和(Prepared updata statement)屬於Prepared型別,支援在sql語句中通過問號?來實現引數的佔位和傳遞。該功能可以節約資料庫的效能資源。主要用作效能測試,非效能測試不必要用。Prepared型別需要用到下方的兩個屬性來實現,請看截圖描述

      *Parameter values:引數值。s代表可以填寫多個;引數值的個數,型別要求和sql語句中的問號所在的值保持一致;引數值之間使用逗號進行分隔。

      *Parameter types:引數型別。s代表可以填寫多個;引數型別的個數、型別值要求與引數保持一致;假如引數值是數字型別,則引數型別就為int,假如是字串,則引數型別就為float;引數型別之間也是用逗號進行分隔。

 

*Variable names:變數名稱s。

  *該處的變數名稱由使用者自定義,建議用有意義命名格式。

  *如s所表示,變數名可以有多個,使用逗號進行分隔。

  *所定義的變數是用來儲存查詢結果的。

  *每一個變數對應的查詢結果的一列值,按照變數名順序一一對應;即N個查詢結果對應N個變數名,注意是按列來對應,一個變數存一列值,也就是如果你查詢的結果中返回的有兩個列,id和name,那你的變數名需要寫兩個來對應,一個儲存id列的所有值,一個儲存name列的所有值。可以看截圖腦補

  *值的儲存是採用類似於陣列的方式來實現。如列變數_1,列變數_2......列變數_N。

 

圖片分隔線~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~· 

 

 

到此,JDBC類元件講解完成!!!!!

 

相關文章