Hibernate Performance Best Practice?
- by user829237
Im writing a Web application using Hibernate 3.
So, after a while i noticed that something was slow. So i tested hibernate profiler and found that hibernate will make unreasonably many db-calls for simple operation. The reason is ofcourse that i load an Object (this object has several "parents") and these "parents" have other "parents". So basicly hibernate loads them all, even though i just need the basic object.
Ok, so i looked into lazy-loading. Which lead me into the Lazyloading-exception, because i have a MVC webapp.
So now i'm a bit confused as to what is my best approach to this.
Basicly all I need is to update a single field on an object. I already have the object-key.
Should I:
1. Dig into Lazy-loading. And then rewrite my app for a open-session-view?
2. Dig into lazy-loading. And then rewrite my dao's to be more specific. E.g. writing DAO-methods that will return objects instanciated with only whats necessary for each use-case? Could be a lot of extra methods...
3. Scratch hibernate and do it myself?
4. Cant really think of other solutions right now. Any suggestions?
What is the best practice?