浅解Hibernate

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任;

Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。


Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD(增删改查)的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的


SessionFactory接口SessionFactory接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象


Configuration类Configuration类负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象


Transaction接口:Transaction接口负责事务相关的操作。它是可选的,开发人员也可以设计编写自己的底层事务处理代码。


Query和Criteria接口Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语句或SQL语句两种表达方式。

HIbernate 的工作原理是什么? 

1.通过Configuration().configure()读取并解析hibernate.cfg.xml配置文件
2.由hibernate,cfg.xml中的<mapping resource="con/xx/xx.hbm.xml"/>读取解析映射关系 
3.通过config.buildSessionFactory()创建sessionFactory 
4.sessionFactory.openSession()打开Session 
5.session.beginTransaction 创建事物Transaction 
6.persistent operate 持久化操作 
7.session.getTransaction().commit() 提交事物 
8.关闭session 和sessionFactory

猜你喜欢

转载自acmerblog.iteye.com/blog/2023535