参考文章:
http://blog.csdn.net/xiangsuixinsheng/article/details/6451752
这种方式获得的session在方法执行结束之后不会自动关闭连接,也就是说我们必须通过session.close()或者releaseSession(session)来手动进行关闭,否则会造成内存泄露或者连接耗尽等问题。手动关闭:
之后,如果对某方法进行事务控制,那么spring框架会自动为我们关闭session,此种情况(session.close())下再执行上述代码,会抛出如下异常: org.springframework.orm.hibernate3.HibernateSystemException:
Session is closed; nested exception is org.hibernate.SessionException: Session is closed
提示session已经关闭。但是如果在代码中通过releaseSession(session)的方法来关闭session,则不会抛出异常。
这种方式获得的session在方法执行结束之后不会自动关闭连接,也就是说我们必须通过session.close()或者releaseSession(session)来手动进行关闭,否则会造成内存泄露或者连接耗尽等问题。手动关闭:
之后,如果对某方法进行事务控制,那么spring框架会自动为我们关闭session,此种情况(session.close())下再执行上述代码,会抛出如下异常: org.springframework.orm.hibernate3.HibernateSystemException:
Session is closed; nested exception is org.hibernate.SessionException: Session is closed
提示session已经关闭。但是如果在代码中通过releaseSession(session)的方法来关闭session,则不会抛出异常。