1
我有一個類,有時不需要加載完全。我可以部分加載它,還是需要創建類的輕量級版本(以及新的映射)?休眠部分對象加載
例如:類Message
與id, title, body, author, timestamp
。當我想刪除郵件時,我只需要兩個字段id, author
。
我有一個類,有時不需要加載完全。我可以部分加載它,還是需要創建類的輕量級版本(以及新的映射)?休眠部分對象加載
例如:類Message
與id, title, body, author, timestamp
。當我想刪除郵件時,我只需要兩個字段id, author
。
我有一個類,有時不需要加載完全。我可以部分加載它,還是需要創建類的輕量級版本(以及新的映射)?
從理論上講,Hibernate可以,如果你使用運行時字節碼做懶加載財產。見19.1.7. Using lazy property fetching。但我沒有太多的經驗,我傾向於更喜歡「輕型版本」的方法,如果真的需要。
例如:類帶有ID,標題,正文,作者,時間戳的消息。當我想刪除郵件時,我只需要兩個字段id,author。
這可能不是最好的例子,你也許可以使用bulk HQL DELETE這裏(這不是加載Message
實例和循環在他們刪除它們更有效的是在一般)。請參閱部分13.4. DML-style operations。但是,如果你不能,那麼加載一個實體來刪除它是使用ORM支付的代價。