通过hibernate API编写访问数据库的代码

来源:互联网 发布:动漫人物模型数据 编辑:程序博客网 时间:2024/04/30 16:32


session操作数据库的对象   一个connection可以被多个session使用
session不会自动提交事务(包含一个connection)  
jdbc会自动提交事务
如果想让hibernate像jdbc那样自动提交事务,必须调用session对象的doWork()方法,获得jdbc的connection
后,设置其为自动提交事务模式(注意:通常不推荐这么做)

对于getCurrentSession 来说,有以下一些特点:

1.用途,界定事务边界

2.事务提交会自动close,不需要像openSession一样自己调用close方法关闭session

3.上下文配置(即在hibernate.cfg.xml)中,需要配置:

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

(需要注意,这里的current_session_context_class属性有几个属性值:jta 、 thread 常用 , custom、managed 少用 )

a).thread使用connection 单数据库连接管理事务

b).jta (java transaction api) Java 分布式事务管理 (多数据库访问),jta 由中间件提供(JBoss WebLogic 等, 但是tomcat 不支持)



0 0
原创粉丝点击