Java 冬眠+;JSF与数据库的连接
我有一个疑问,我搜索了好几个地方,找不到关于它的任何东西,然后我问了专家的领域 JSF的作用域和连接到数据库hibernate的持续时间之间有关系吗 我注意到有些连接经常保持打开状态,而且在大多数情况下,这些连接都是会话作用域的连接。据我所知,在作用域处于活动状态时,这些连接保持打开状态 后来,我使用了更多的ViewScope,这个连接问题有所缓解 我不知道我的怀疑是否还在继续,但有人知道JSF+Hibernate是否真的存在这种关系,它与数据库有关吗Java 冬眠+;JSF与数据库的连接,java,hibernate,jsf,Java,Hibernate,Jsf,我有一个疑问,我搜索了好几个地方,找不到关于它的任何东西,然后我问了专家的领域 JSF的作用域和连接到数据库hibernate的持续时间之间有关系吗 我注意到有些连接经常保持打开状态,而且在大多数情况下,这些连接都是会话作用域的连接。据我所知,在作用域处于活动状态时,这些连接保持打开状态 后来,我使用了更多的ViewScope,这个连接问题有所缓解 我不知道我的怀疑是否还在继续,但有人知道JSF+Hibernate是否真的存在这种关系,它与数据库有关吗 谢谢。换句话说,您将Hibernate会话
谢谢。换句话说,您将Hibernate会话指定为会话范围的JSF托管bean的属性?到底为什么?这不是他们应该怎么用的。我不知道这是不是正确的方法。但是根据你所说的,我不能在SessionScoped或NoScope中打开Hibernate会话?当然可以,但绝对不应该将其指定为类的实例变量,该类的生命周期比资源本身应该生存的时间长(原因与“普通香草”完全相同)JDBC资源,如
连接
,语句
,结果集
等)。如果您首先已经不熟悉基本JDBC,建议您暂停Hibernate并后退一步,了解Hibernate在幕后使用的强制性基础知识。这意味着Hibernate会话将一直持续到调用的类实例结束,而不管其作用域如何?