lightweight = doesn�t require a
J2EE application server or the (full) J2EE technology stack
non intrusive = because there is no application server there are no server (or framework) dependent interfaces to implement on your Business/Domain object (like EJBObject, EJBHome, etc.). Most of the applications interaction with the framework is accomplished via Dependency Injection
Inversion of Control Containers and the Dependency Injection pattern). In the case of Hibernate you still have to deal with the Session/Persistence manager � however, besides a synthetic key and maybe a version field, your Business/Domain objects remain independent of Hibernate which means you can
test your Business/Domain objects without Hibernate.