2014-04-01 65 views
0

我有一個彈簧mvc應用程序,在eclipse中運行,帶有hibernate和slf4j。我想關閉控制檯中的hibernate日誌記錄,因爲它正在埋藏我希望能夠看到的其他控制檯消息。我如何關閉休眠日誌?在eclipse中關閉休眠日誌記錄

我已經做了一些關於這個主題的網絡搜索,並看了其他貼子堆棧溢出,但其他貼子不回答我的問題。例如,從另一個帖子下面的代碼將不會在Eclipse編譯,因爲它給人的消息,該方法不是對象的一部分,甚至當我輸入每一個可能的設置給定對象的包:

List<Logger> loggers = Collections.<Logger>list(LogManager.getCurrentLoggers()); 
    loggers.add(LogManager.getRootLogger()); 
    for (Logger logger : loggers) { 
     logger.setLevel(Level.OFF); 
    } 

而且,在我的工作區搜索關鍵字show_sql沒有產生任何結果,所以看起來我不能只將hibernate.show_sql設置爲false。

也許其他解決方案是過時版本的庫?我使用eclipse kepler,slf4 1.7.5和hibernate 4.2。

回答

2

如果你只是想關閉休眠SQL日誌記錄在Spring的PetClinic示例應用程序,將src /主/資源設置jpa.showSql爲假/spring/data-access.properties。

希望這會有所幫助。

+0

+1和信用爲答案。謝謝你指出什麼應該是顯而易見的,但不是。 – CodeMed

1

爲了關閉休眠消息,您必須正確配置您的日誌框架。

很可能你正在使用log4j。 log4j的配置或位於的log4j.xml或log4j.properties

只需添加一些類似的配置文件

log4j.logger.org.hibernate=ERROR 
+0

嘗試按Ctrl + Shift + t並輸入log4j – WeMakeSoftware

+0

將項目上傳到任何服務,我可以看看它 – WeMakeSoftware

+0

嘗試在Eclipse之外使用OS搜索工具進行搜索。可能是Eclipse無法找到指定的文件。 – WeMakeSoftware

0

這可能幫助,在你的代碼「show_sql」動態設置爲false。

Configuration cfg = new Configuration().configure(). 
    .setProperty("hibernate.show_sql", "false"); 

如果沒有檢查計算器這個帖子:

Click here

+0

它不起作用,重新創建一個新的配置實例,但你沒有使用它。根據用戶如何初始化Hibernate,它可能是配置文件中的配置參數或數據源屬性 – WeMakeSoftware

+0

使用org.hibernate.cfg – Susie

+0

檢查是否有一個會話工廠的bean定義 – Susie