Hibernate介绍

1.介绍

        Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了轻量级的对象封装,使 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。它不仅提供了从 Java 类到数据表之间的映射,也提供了数据查询和恢复机制。相对于使用 JDBC 和 SQL 来手工操作数据库,Hibernate 可以大大减少操作数据库的工作量。 另外 Hibernate 可以利用代理模式来简化载入类的过程,这将大大减少利用Hibernate 从数据库提取数据的代码的编写量,从而节约开发时间和开发成本 Hibernate 可以和多种Web 服务器或者应用服务器良好集成,如今已经支持几乎所有的流行的数据库服务器。

2.原理

2.1.原理图

 Hibernate原理图

2.2 核心接口以及功能

        1.Configuration接口 :负责配置并启动hibernate 加载配置类 xml

        2.SessionFactory接口 : 负责初始化hibernate,负责 session 实例创建 

        3.Session接口 : 负责持久化对象的CRUD操作 ,这里 session 是应用和数据库的访问会话,不与 Web 的 session 混淆,负责访问数据库操作

        4.Transaction接口 : 负责事务 (提交和回滚)

        5.Query接口和Criteria接口 : 负责执行各种数据库查询 

2.3 工作原理

        1.通过Configuration().configure();读取并解析hibernate.cfg.xml配置文件

        2.由hibernate.cfg.xml中的读取并解析映射信息

        3.通过config.buildSessionFactory();//创建SessionFactory

        4.sessionFactory.openSession();//打开Sesssion

        5.session.beginTransaction();//创建事务Transation

        6.persistent operate持久化操作 //一般指Save这个方法

        7.session.getTransaction().commit();//提交事务

        8.关闭Session

        9.关闭SesstionFactory

2.4 Hibernate 优点

        1.对 JDBC访问数据库代码做了封装,降低了数据访问层代码耦合

        2.Hibernate 是基于 JDBC的主流持久化框架,是一个优秀的关系映射实现,很大程度上减少了 DAO 层编码工作

        3.Hibernate 使用 JAVA 反射机制

        4.Hibernate 性能非常好,是一个轻量级框架,拥有灵活的关系映射,支持大多数关系数据库,从一对一到多对多的各种复杂关系

你可能感兴趣的:(Hibernate介绍)