I presume you are taking about hibernate sessions.
It again depends on how you want your model to be available. As you know, hibernate session is the first level cache. If you want to operate on a set of data, which is attached to a request/transaction session scope, then when the request/transaction perishes so does your session data.
If you have it for the whole application, then every request need not fetch the data from the Database.
It really depends on what kind of application you run, what is the freshness of data" you need to have, etc.,
should i close the session after every transaction (or set of transactions)?
- you need not. you can actually choose to flush the session after many transactions.
[ September 26, 2007: Message edited by: Arun Kumarr ]