如果这是完全相同的内容,请纠正我,我知道这个话题经常被讨论,但是找不到确切的答案。
问题:
在MVC Web应用程序中处理Hibernate对象的最佳实用解决方案是什么?
细节:
我正在使用Hibernate,并希望在可能的情况下利用延迟加载。 我正在使用MVC风格的Webapp。 我讨厌获得延迟加载初始化异常。 我讨厌不得不在事务之间重新连接Hibernate对象。
选项:
hibernateObject.getRelatedObjects()
springService.getRelatedObjects(hibernateObject)
我想念什么吗? 我是否考虑得太多了? 我是否思想不足?
PS:
对于Web框架,我正在使用ZK,但实际上 并不 需要ZK特定的答案。 我也使用Spring,并且对Spring的特定回答很酷,因为它无处不在。
使用4-ish- 不要在视图中使用开放会话,不要让您的hibernate实体一直冒泡到视图,而是要让转换器在hibernate实体和域对象或“视图bean”之间转换,具体取决于您想要工作。
我认为Hibernate实体只是一种持久策略,而不是域模型或UI表示。