在我的應用程序中,我使用Spring上下文和JPA。我有一些註釋爲@Entity
的實體集合,它們的表格在系統啓動時自動創建。最近我開始使用Spring ACL,所以我必須有following additional DB schema,我不希望這些表映射到實體(我不需要它們,因爲Spring ACL獨立管理它們)。JPA + Spring如何使用自定義表格和數據初始化數據庫
- 我想自動插入例如admin用戶帳號轉換爲
User
的實體表。如何正確地做到這一點? - 我想在系統啓動時初始化Spring ACL自定義表,但SQL腳本文件似乎不是很好的解決方案,因爲如果我使用不同的數據庫進行生產和功能測試,不同的SQL方言不允許我執行腳本正確地在兩個引擎上(例如,當使用MySQL和HSQL時)。
起初,我試圖用ServletListener
這個servlet初始化期間檢查數據庫,並增加了必要的數據和架構,但這並不集成測試工作(因爲沒有在所有涉及的servlet)。
我想實現的是在JPA初始化所有實體表之後啓動的Spring bean(?),使用注入的DAO插入所有啓動數據並以某種方式創建Spring ACL模式。然後 - 我想從IoC中移除bean(因爲我不再需要它)。可能嗎?
或者有沒有更好的方法來做到這一點?
您使用哪種JPA提供程序,Eclipse Link,Hibernate還是其他? – Ralph
我使用eclipselink。 – fracz