簡體   English   中英

為什么Hibernate Serializable中的生命周期監聽器?

[英]Why are life-cycle listeners in Hibernate Serializable?

您實現的Hibernate接口提供事件偵聽器,例如: org.hibernate.event.PostInsertEventListener; 全部擴展Serializable。

但是,它似乎無法解釋為什么您的偵聽器需要可序列化。 我們已經將DAO與數據庫連接注入了一段時間,但它還沒有失敗,但我擔心可能會出現Hibernate通過序列化鏈接傳遞監聽器的情況,因此會丟失數據庫連接。

所以問題是:為什么hibernate事件監聽器必須是可序列化的?

雖然我不確定我是否正確理解了您的問題,但我不知道序列化事件監聽器的問題是什么。

必須實現一個事件監聽器,就好像它是一個單例,並且它們不應該在實例變量中保存任何狀態。

所以序列化應該不是問題。

DAO無法序列化(出於顯而易見的原因)。

如果您確實有一個引用DAO的事件偵聽器,請將DAO實例變量標記為瞬態。 當您使用DAO檢查null時,如果null從DAOFactory獲取appropratie DAO。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM