2015-09-15 87 views
4

如果有可能禁用JPA堆棧的初始化,我會陷入困境。Spring Boot。如何禁用JPA的初始化有條件地

我有些情況下我的應用程序在數據庫無法訪問的環境中執行。應用程序可以在應用程序級別上存活 但從技術上講,我在數據源的初始化方面得到了一些例外。

  1. 有musst有某種方式在所有的(不需要withoud分貝。通過配置文件或成才這樣。
  2. 或者莫比,至少我可以說,連接池無法連接或somethinglike這禁用JPA intialization。
  3. 其他想法

回答

7

是的,你可以使用配置文件爲:?一個JPA和另一個沒有它要關閉數據源/ JPA自動配置你需要添加spring.autoconfigure.excludes財產(含完全合格的類名稱)特定於配置文件application.properties

要排除哪些類?我建議從DataSourceAutoConfiguration開始,如果它不夠,請嘗試禁用other database-related autoconfiguration classes

注意spring.autoconfigure.excludes是一項新功能,那就是avaiable since Spring Boot 1.3.0.M3

+0

是的,但如何使「eclusion」 ** ** conditionaly到配置文件。 第二:如何處理_Autowired_。意味着需要定製工廠嗎?也許一些exmaple可以幫助我 – aholbreich

+0

確定Autowirede可以有Required = false ...現在我想知道如何 使 EnableAutoConfiguration(排除= DataSourceAutoConfiguration .class)有條件,取決於配置文件 – aholbreich

+1

'spring.autoconfigure.excludes'是模擬可以在'application.properties'中使用'EnableAutoConfiguration(exclude =)'。只需將它放在'application-nodb.properties'文件中,'nodb'是配置文件的名稱。 –

相關問題