2012-07-19 141 views
4

這是hibernate的一個未記錄部分,但是如果在類路徑的根目錄中存在一個名爲import.sql的文件('/import.sql') Hibernate將在創建後執行從文件讀取的SQL語句數據庫模式。我想知道是否有辦法在休眠時關閉它。顯而易見的答案是從import.sql更改名稱,但我想知道是否有另一種方法。也許通過hibernate屬性?在休眠狀態下關閉import.sql

回答

3

您可以嘗試將hibernate.hbm2ddl.import_files屬性設置爲空字符串。

正如你可以在SchemaExport源代碼看,試圖加載由屬性所指定的文件,並返回DEFAULT_IMPORT_FILE如果配置不包含一個值:

this.importFiles = ConfigurationHelper.getString(
      AvailableSettings.HBM2DDL_IMPORT_FILES, 
      configuration.getProperties(), 
      DEFAULT_IMPORT_FILE 
    ); 

M.

+0

都能跟得上D:如果我可能問,你從哪裏得到這些信息? – nook 2012-07-19 21:51:07

+1

我的計算機上有Hibernate源代碼。你可以在Internet上找到它,例如ConfigurationHelper:http://grepcode.com/file/repository.jboss.org/nexus/content/repositories/releases/org.hibernate/hibernate-core/4.0.0.Alpha2/ org/hibernate/internal/util/config/ConfigurationHelper.java#ConfigurationHelper.getString%28java.lang.String%2Cjava.util.Map%29。其餘部分來自hibernate-core/src/main/java/org.hibernate.tool.hbm2ddl。*軟件包HIH – poussma 2012-07-20 06:44:51

+0

我做了一些更多的研究,它說這個特性自3.6版本開始提供。所以當我說它不應該這樣做時,我可能會搶先一步。我會更新我的hibernate版本,如果有幫助,我會接受。謝謝你的幫助! – nook 2012-07-20 19:16:51

相關問題