Object IDs Proxies Separation of database and business concerns Caching Extended queries Optimistic locking Joins Relationships Initialization for J2SE and J2EE