初识Hibermate

Hibernate API 中的接口可以分为以下几类

1 提供访问数据库的操作的接口,包括 session Transaction Query 接口;

2 用于配置 Hibernate 的接口, Configuration

3 间接接口,使应用程序接受 Hibernate 内部发生的事件,并作出相关的回应,包括: Interceptor Lifecycle Validatable

4 用于扩展 Hibernate 功能的接口,如 UserType CompositeUserType IdentifierGenerator 接口。

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

 

Hibernate的优缺点

(1)优点:
    a.Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。
    b.Hibernate 的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。
    c. 它支持各种关系数据库,从一对一到多对多的各种复杂关系。

(2)缺点:

    Hibernate限制您所使用的对象模型。例如,一个持久性类不能映射到多个表。

 

持久化层

(1)什么叫持久化?

 

在图1右中,分离出的持久化层封装了数据访问细节,为业务逻辑层提供了面向对象的API。

持久(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。持久化的主要应用是将内存中的数据存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。

 

(2)什么叫持久层?

持久层(Persistence Layer),即专注于实现数据持久化应用领域的某个特定系统的一个逻辑层面,将数据使用者和数据实体相关联。

 

(3)为什么要持久化?增加持久层的作用是什么?

数据库的读写是一个很耗费时间和资源的操作,当大量用户同时直接访问数据库的时候,效率将非常低,如果将数据持久化就不需要每次从数据库读取数据,直接在内存中对数据进行操作,这样就节约了数据库资源,而且加快了系统的反映速度。

增加持久化层提高了开发的效率,使软件的体系结构更加清晰,在代码编写和系统维护方面变得更容易。特别是在大型的应用里边,会更有利。同时,持久化 层作为单独的一层,人们可以为这一层独立的开发一个软件包,让其实现将各种应用数据的持久化,并为上层提供服务。从而使得各个企业里做应用开发的开发人 员,不必再来做数据持久化的底层实现工作,而是可以直接调用持久化层提供的API。

 

(4)目前在持久化层领域,实现模式有以下几种:

A 业务逻辑和数据访问耦合

B 主动域对象模式

C ORM模式(Object Relational Mapping),即对象关系映射,hibernate就是这种实现。

D JDO模式

E CMP模式

 

你可能感兴趣的:(Hibernate,数据库,应用服务器,api,jdbc,Interceptor)