初识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模式

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值