【发布时间】:2012-04-25 15:52:44
【问题描述】:
我正在使用 Hibernate 3 编写一个 Web 应用程序。
所以,过了一会儿我注意到有些东西很慢。所以我测试了hibernate profiler,发现hibernate会为简单的操作进行不合理的许多db调用。原因当然是我加载了一个对象(这个对象有几个“父母”),而这些“父母”还有其他“父母”。所以基本上休眠会加载它们,即使我只需要基本对象。 好的,所以我研究了延迟加载。这导致我进入延迟加载异常,因为我有一个 MVC webapp。
所以现在我有点困惑,我最好的方法是什么。 基本上我只需要更新对象上的单个字段。我已经有了对象键。
我应该: 1.深入研究延迟加载。然后重写我的应用程序以获得开放会话视图? 2. 深入研究延迟加载。然后重写我的道更具体。例如。编写 DAO 方法来返回实例化的对象,这些对象只包含每个用例所需的内容?可能是很多额外的方法... 3.从头开始hibernate自己做? 4. 现在真的想不出其他解决方案。有什么建议吗?
最佳做法是什么?
【问题讨论】:
标签: java performance hibernate jpa orm