您的位置:首页 > 数据库

打开session的方法和org.hibernate.HibernateException: No CurrentSessionContext configured! 异常

2012-07-06 17:16 471 查看
代开session有两种方法:

1、openSession只要调用就打开一个新的session,用完后需手动关闭。

2、getCurrentSession用原来已经存在的,拿的是同一个session,如果没有就打开一个新的session,当事物提交后session自动关闭,在界定事物边界时用。

当要用getCurrentSession()时,需在配置文件hibernate.cfg.xml中加入如下代码,常用的有thread、jta:

1、用的最多的是thread,相当于在当前线程中找session。依赖于数据库本身,(如使用JDBC的独立应用程序),在hibernate.cfg.xml中session-factory段加入: 

<property name="current_session_context_class">thread</property>

2、jta(java transaction api)当前应用服务器能够提供分布式事物处理,事物由多个数据库连接,运行时需要分布式事物applicationserver(如Jboss)的支持,在hibernate.cfg.xml中session-factory段加入: 

<property name="current_session_context_class">jta</property> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐