如何顯示休眠SQL引數值 P6Spy

2021-10-07 01:33:28 字數 2497 閱讀 6275

有很多開發人員在詢問hibernate sql引數值問題。 如何顯示傳遞給資料庫的hibernate sql引數值? hibernate只是將所有引數值顯示為問號(?)。 使用show_sql屬性,hibernate將顯示所有生成的sql語句,但不顯示sql引數值。

例如

hibernate: insert into mkyong.stock_transaction (change, close, date, open, stock_id, volume) 

values (?, ?, ?, ?, ?, ?)

有沒有辦法記錄或顯示確切的hibernate sql引數值?

好吧,如果有乙個問題有乙個答案〜

p6spy是乙個有用的庫,用於記錄所有sql語句和引數值,然後再將其傳送到資料庫。 p6spy是免費的,可用於攔截所有資料庫sql語句並將其記錄到日誌檔案中,並且適用於任何使用jdbc驅動程式的應用程式。

p6spy官方** 。

sourceforge.net上的p6spy

提取p6spy-install.jar檔案,查詢p6spy.jarspy.properties

p6spy.jar新增到您的專案庫依賴項中

修改資料庫配置檔案。 您需要用p6spy jdbc驅動程式替換現有的jdbc驅動程式–「com.p6spy.engine.spy.p6spydriver

最初是mysql jdbc驅動程式–「 com.mysql.jdbc.driver」

false

com.mysql.jdbc.driver

password

jdbc:mysql://localhost:3306/mkyong

root

org.hibernate.dialect.mysqldialect

true

將其更改為p6spy jdbc驅動程式–「 com.p6spy.engine.spy.p6spydriver」

false

com.p6spy.engine.spy.p6spydriver

password

jdbc:mysql://localhost:3306/mkyong

root

org.hibernate.dialect.mysqldialect

true

修改p6spy屬性檔案–「spy.properties

用您現有的mysql jdbc驅動程式替換「真實驅動程式」

realdriver=com.mysql.jdbc.driver

#specifies another driver to use

realdriver2=

#specifies a third driver to use

realdriver3=

更改日誌檔案位置

logfile屬性中更改日誌檔案的位置,所有sql語句都將登入到該檔案。

視窗

logfile     = c:/spy.log
*尼克斯

logfile     = /srv/log/spy.log
將「 spy.properties」複製到專案的根資料夾,確保您的專案可以找到「 spy.properties」,否則將提示「 spy.properties」檔案未找到異常。

執行您的應用程式並執行一些資料庫事務,您會注意到從應用程式傳送到資料庫的所有sql語句都將登入到您在「 spy.properties」中指定的檔案中。

樣本日誌檔案如下。

insert into mkyong.stock_transaction (change, close, date, open, stock_id, volume) 

values (?, ?, ?, ?, ?, ?)|

insert into mkyong.stock_transaction (change, close, date, open, stock_id, volume)

values (10.0, 1.1, '2009-12-30', 1.2, 11, 1000000)

坦率地說,p6spy在減少開發人員的除錯時間方面非常有用。 只要您的專案使用jdbc驅動程式進行連線,p6sqp都可以啟動它並為您記錄所有sql語句和引數值。

p6spy

p6spy

1.3

p6spy配置

標籤: 休眠引數

翻譯自:

C 函式如何返回多個引數值

有時我們需要從通過乙個函式返回多個值,不幸的是c c 不允許這樣做 但我們可以通過一些巧妙的方法來達到這種效果。下面本篇文章就來給大家介紹c c 從函式中返回多個值的方法,希望對大家有所幫助。在函式呼叫時,傳遞帶有位址的引數,並使用指標更改其值 這樣,修改後的值就會變成原始引數。下面通過 示例來看看...

Google 翻譯如何獲取 tk 引數值?

1.首先獲取 tkk 引數,這個引數可以在網頁獲取,src tkk eval function 正規表示式 tkk eval function var sa x3d 0 9 var sb x3d 0 9 return s 0 9 x27.x27 a b a a x3d d b b x3d d c r...

如何顯示模型構建器的引數?

模型構建器建立完成之後,會以乙個工具的形式儲存在工具箱或者資料夾中,在catalog中,雙擊開啟,會以工具對話方塊的形式展示,但是使用者有時發現開啟之後對話方塊的形式如下 對話方塊中無任何引數,想要換個資料或者設定一下引數執行,還必須開啟模型構建器進行重新編輯,這為我們帶來了很大的麻煩,對於一些不會...