hibernate中SessionFactory与Session的作用

Posted Red_Code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hibernate中SessionFactory与Session的作用相关的知识,希望对你有一定的参考价值。

首先,SessionFactory是线程安全的,SessionFactory用到了工厂模式。

其创建和销毁需要耗费很大的资源,所以一个应用中的一个数据库一般只对应一个sessionfactory。

 

SessionFactory接口提供了获取session类实例的方法。

一般有两种方法创建session实例:

1、getCurrentSession方法:

采用该方法创建的session实例会绑定到当前线程当中。且session实例会在提交或回滚时自动关闭。

2、openSession方法:

采用该方法会创建新的的session实例。使用完后需进行手动关闭。

session类用于对数据库的操作。

session类是“非线程安全”的。

每执行一个数据库事务,都需要创建一个session实例,使用后还需要关闭session。

 

以上是关于hibernate中SessionFactory与Session的作用的主要内容,如果未能解决你的问题,请参考以下文章

将 JDBCTemplate 与 Hibernate SessionFactory 一起使用?

hibernate3与ehcache-2.8.3配合使用,在多个SessionFactory实例的情况下出现“Another unnamed CacheManager already ex

hibernate 的SessionFactory的getCurrentSession 与 openSession() 的区别

hibernate 的SessionFactory的getCurrentSession 与 openSession() 的区别

用 Struts 存储 Hibernate SessionFactory

java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Sessio