我使用eclipse鏈接作爲JPA實現,並連接到運行在「jdbc:XXX://localhost:35001/
」上的數據庫。有沒有一種方法可以跟蹤所有的sql調用?我在本地機器上的eclipse中的java項目中運行這個。如何跟蹤從eclipse-link JPA到DB的SQL調用
感謝
我使用eclipse鏈接作爲JPA實現,並連接到運行在「jdbc:XXX://localhost:35001/
」上的數據庫。有沒有一種方法可以跟蹤所有的sql調用?我在本地機器上的eclipse中的java項目中運行這個。如何跟蹤從eclipse-link JPA到DB的SQL調用
感謝
幾個選項,你可以嘗試:
你可以嘗試使用像P6SPY代理由安德烈亞斯,或替代的像log4jdbc等提到這可以當你試圖在調試有用跟蹤來自多個客戶端的呼叫,因爲代理可以攔截來自它們的呼叫。
但是對於您的情況,我會建議使用EclipseLink的內置日誌記錄工具。在Eclipse中的鏈接,您可以通過在持久化XML項配置語句的記錄像圖所示:
<property name="eclipselink.logging.level.sql" value="FINE"/>
<property name="eclipselink.logging.parameters" value="true"/>
我建議,使代碼更改後取消部署應用程序,並停止和重建之前重新啓動應用程序服務器和然後再次部署該應用程序。我已經看到了很多情況,其中日誌記錄並不是從你經歷整個週期開始的。
最後一個選項是SQL跟蹤。根據您的數據庫後端,您可能可以運行配置文件或跟蹤。 SQL-Server將允許你跟蹤它。然後您可以查看針對數據庫執行的所有SQL。這可能是在你的情況下矯枉過正,因爲它會記錄所有活動,除非配置不正確。
使用類似P6spy的代理驅動程序 – Andreas
「track」是什麼意思?這裏可能有不同的解釋。 – MWiesner