Then it might help to post what those issues are, but Hibernates documentation contains some performance tuning measure reccomendations, as does the hibernate website. Have you checked those resources, yet? (No, I'll bet.)

I always had a problem with the hibernate when the session was opened for a long period and a lot of objects were stored or loaded with it. All those objects were placed in to the session cache. Most of hibernate operation checks if the object is in session cache. The checking become take a time when there a lot of objects. So, you can use evict() method for unused any more stored or loaded objects while the session is open.