Well, when Hibernate loads a JavaBean, it loads all properties associated with that bean, so once the POJO is 'detached' from the Session, all of those properties of the bean are still available.
Also, any other POJOs that are associated with that bean through a one-to-one mapping will be loaded as well. So, all properties of a POJO, and all one-to-one associations are EAGERLY loaded by Hibernate.
One to Many and Many to Many relationships are loaded in a Lazy fashion, so, if you try and access properties of those beans, by default, you won't get them if the session is closed. You can, however, change the FetchType of an association and make it EAGER, and in that case, the associated objects WILL be loaded and available after the session is closed.
One design
pattern is called "Open Session in View" where you keep the session open while the JSP is generating the view, thus eliminating LazyLoadedExceptions completely. It's advanced stuff.
Here's a little tutorial that's very popular about how Hibernate loads data, persists data, and manages data. You might find it interesting:
How Hibernate Works: Working with Hibernate and the Java Persistence API (JPA)
Keep asking questions, newbie! It's the best way to learn.
-Cameron McKenzie