sessionFactory.currentSession()

public final Session currentSession() throws HibernateException {
Session current = existingSession( factory );
if (current == null) {
current = buildOrObtainSession();
// register a cleanup synch
current.getTransaction().registerSynchronization( buildCleanupSynch() );
// wrap the session in the transaction-protection proxy
if ( needsWrapping( current ) ) {
current = wrap( current );
}
// then bind it
doBind( current, factory );
}
return current;
} 




   protected Session buildOrObtainSession() {     
            return factory.openSession(     
                    null,     
                    isAutoFlushEnabled(),     
                    isAutoCloseEnabled(),     
                    getConnectionReleaseMode()     
            );     
    }


其中 isAutoFlushEnabled() 默认为true.

所以,用此方法得到的session不用显式关闭。

你可能感兴趣的:(java)