2
我正在使用的項目使用Hibernate進行持久化。加載休眠實體時總是調用方法
該項目一分爲個子項目,其中四個是與此有關:
- 消息-DOM
- 用戶服務
- 消息服務
- 情況下,服務
消息實體(在用戶dom中)包含一個String userID
字段和一個@Transient String userName
字段。另一個實體Case與消息具有OneToOne關係。問題是:
- 每次我們加載消息(直接在消息服務中,或者通過在case-service中加載一個Case來間接加載),我們需要設置它的userName字段。
- userName通過調用用戶服務來檢索。
- 無法從message-dom調用用戶服務(出於依賴性原因)。
我見過有一個實體的@PostLoad註解,但顯然這些在這裏沒有幫助,因爲我們不能從實體調用服務。目前我們手動進行服務調用,但這很容易出錯(特別是在案例中間接加載消息時)。
我們如何確保每次加載Message實體時都能設置字段?
實現負荷後事件,並將其註冊的配置對象 – Firo
@Firo上:你能否詳細說明一下?這似乎朝着正確的方向發展,但我不知道配置對象是 – ARRG