2013-03-24 50 views
0

我有一個java應用程序,它執行大量的寫入到mysql數據庫。數據不會丟失非常重要,如果mysql連接中斷並且有人關閉應用程序,應用程序隊列中的數據將丟失。從preparedStatment中提取完整的sql以寫入文件?

我需要找到一種方法,當應用程序關閉時將查詢正確寫入文件,以便下次啓動時可以加載未保存的數據並嘗試處理它。

問題是,我找不到一種方法來查看preparedStatement系統中的最終sql語句,並且查詢的數據不容易寫入文件,因爲它全部來自各種對象。

有沒有辦法抓住完整的查詢,以便我可以將它寫入文件,如果數據庫連接不存在?

我假設沒有 - 除了自己構建sql之外,還有其他選擇嗎?

+0

退房http://stackoverflow.com/questions/2683214/get-query-from-java-sql-preparedstatement – Trinimon 2013-03-24 16:59:10

+0

不能使用事務? – FBB 2013-04-02 16:25:06

回答

0

你可以,如果你正在使用JDBC MySQL驅動程序做

preparedStatement.toString() 

或者,你可以使用Log4JDBC