2012-06-26 69 views
0

我們有許多具有位置類型的@JoinColumn字段的Hibernate實體。位置數據基本上是靜態的,因此我們決定將它們完全緩存在內存中。如何將Spring bean注入到hibernate自定義類型中?

最初的計劃是用locationId字段替換所有位置字段。但是,我們很快意識到這是太多工作,特別是因爲引用了位置字段的標準查詢不容易被現有工具所採用。

另一種方法是實現將locationIds從數據庫映射到Location對象的自定義Hibernate類型,但似乎沒有任何簡單的方法將緩存bean注入到自定義類型實例中。

(我們的Hibernate的版本不提供Configuration.registerTypeOverride()調用,所以我們無法控制的類型實例的實例,因此沒有辦法來注入。)

回答

0

在我的特定情況下,我可以繼承實體的PersistenceProvider並在會話工廠創建完成後立即傳遞Spring上下文。

相關問題