Hibernate概念

Hibernate概念及体系结构

Hibernate概念

Hibernate 是一个开放源代码的 O/R Mapping 持久化框架(中间件),它对JDBC进行了轻量级的封装,使Java程序员可以随心所欲地使用面向对象编程思维来操纵数据库。

Hibernate内部封装了JDBC、JTA(Java Transaction API)和JNDI,JDBC提供底层的数据访问操作,只要用户提供了相应的JDBC驱动程序,Hibernate可以访问任何一个数据库系统。JNDI和JTA使得Hibernate能够和JavaEE应用服务器集成。

所谓轻量级封装,是指Hibernate并没有完全封装JDBC,Java应用既可以通过Hibernate API访问数据库,还可以绕过Hibernate API直接通过JDBC API来访问数据库。

采用配置方式的编程风格。

Hibernate框架下载:http://hibernate.org/

Hibernate概念_第1张图片

Hibernate体系结构

Hibernate概念_第2张图片

其中hibernate.properties和XML Mapping都是配置文件,配置对象模型(Persistent Objects)和 关系模型(Database)的映射关系。

Hibernate概念_第3张图片

Hibernate核心API

Configuration类

配置Hibernate,根启动Hibernate。Hibernate应用通过Configuration实例来指定对象-关系映射文件的位置或者动态配置Hibernate的属性,然后创建SesssionFaction的实例对象。

SessionFactory接口

初始化Hibernate,充当数据存储源的代理,创建Session对象,一个SessionFactory对应一个数据存储源(DB)。

Session接口

负责保存、更新、删除、加载和查询对象,它是Hibernate应用使用最广泛的接口,也被称为持久化管理器。

Transaction接口

管理事务,是Hibernate的数据库事务接口,它对底层的事务接口做了封装,底层事务接口包括:JDBC、JTA和CORBA事务的API。

Query和Cirteria接口

  • 执行数据库查询,这两个接口是Hibernate查询接口,用于向数据库查询对象,以及控制执行查询的过程。

  • Query包装了一个HQL(Hibernate Query Language)查询语句,HQL查询语句和SQL语句是相似的,但是HQL查询语句是面向对象的,它引用类名及类的属性名,而不是表名及表的字段名。

你可能感兴趣的:(Hibernate)