- SQL Server support
- DML-style HQL (UPDATE, DELETE, INSERT INTO... SELECT)
- Native Query support
- Connection handling
Hibernate 3.1 introduced non OLTP features as well as better environment integration:
- Custom strategy for session handling through CurrentSessionContext including 2 default implementations (JTA based and ThreadLocal based session handling)
- more natural and aggressive connection handling in J2EE and J2SE environments
- command-oriented API (StatelessSession API) for operations on huge number of objects
- bulk UPDATE, DELETE, INSERT INTO ... SELECT for multi-table entities
- "extra lazy" collections for huge collection handling
- use of join fetch on collection through scrollable resultsets through break processing
- database generated properties (including database timestamps)
- additional ON clauses for joins
- dirty checking short-cuts for instrumented classes