请问session是否需要每次做数据库操作时都通过sessionFactory.openSession()来生成?
还是只要生成一次,以后都使用这个session就可以了?
另外请问hibernate对数据库的连接是在sessionFactory生成时还是session生成时作的?
还是只要生成一次,以后都使用这个session就可以了?
另外请问hibernate对数据库的连接是在sessionFactory生成时还是session生成时作的?
解决方案 »
- JMS Server 断掉了改怎么办?
- 10分钟内结贴 ,散分!
- xml
- 哪些公司用strtus+spring+hibernate架构的,来报个名
- 求助 关于clone方法的重写 有一点不明 请教众大神
- 刚开始学习JAVA,下载了spring可是不知道怎么用
- JAVA 事件监听为什么会引发两次事件处理?
- 急救,Tomcat4.0.6 (linux版)的问题,在线等待,请大家帮忙啊
- JDBC连接server2000(小妹只剩30分了)发个慈悲吧!
- Applet聊天程序
- 一个Java简单题目
- 为什么我用struts2.0+hibernate3.2+spring2.0做增删改查的时候只能查询,而不能增删改呢?
以为sessionFactory是重量级!通常是单粒模式!他通常要求有个数据源来实例化。所以个人认为sessionFactory生成时就进行数据库连接!!
SessionFactory是线程安全的,一般一个系统中只有一个.
所以如果每次都openSession,或者新建connection的话,会很浪费资源,当没有并发的时候就一个连接即可如果只用hibernate,通常是用自动生成的HibernateSessionFactory类中的getSession()方法来获取session,先到当前线程中寻找是否已经存在了session,存在就用之,否则再去调用openSession方法创建