What's the proper way to manage persisted entities in the 1st level cache during thread/session lifetime? Actually, there is only one or two persisted instances per thread (session) that should be present at all times, for referencing them from other (transient) entities before saving.
Since I need to clear the session cache every once in a while (because otherwise it gets filled and painfully slow), what I am not sure is - should I:
I think you should close previous Session and open new one. If objects that you want to cache are heavy for loading per each session you sould use Second level caching.