b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

hibernate工作原理_hibernate工作原理图_hibernate面试题

电脑杂谈  发布时间:2017-01-09 02:02:33  来源:网络整理

Hibernate工作原理

Hibernate使用了J2EE架构中的如下技术:JDBC、JTA、JNDI。其中JDBC是一个支持关系操作的一个基础层;它与JNDI和JTA一起结合,使得Hibernate可以方便地集成到J2EE应用服务器中去。

在这里,我们不会详细地去讨论HibernateAPI接口中的所有方法,我们只简要讲一下每个主要接口的功能,如果你想了解得更多的话,你可以在Hibernate的源码包中的net.sf.hibernate子包中去查看这些接口的源代码。

下面我们依次讲一下所有的主要接口:

核心接口

以下5个核心接口几乎在任何实际开发中都会用到。通过这些接口,你不仅可以存储和获得持久对象,并且能够进行事务控制。

Session接口Session接口对于Hibernate开发人员来说是一个最重要的接口。然而在Hibernate中,实例化的Session是一个轻量级的类,创建和销毁它都不会占用很多资源。这在实际项目中确实很重要,因为在客户程序中,可能会不断地创建以及销毁Session对象,如果Session的开销太大,会给系统带来不良影响。

SessionFactory接口这里用到了一个设计模式――工厂模式,用户程序从工厂类SessionFactory中取得Session的实例。 令你感到奇怪的是SessionFactory并不是轻量级的!实际上它的设计者的意图是让它能在整个应用享。典型地来说,一个项目通常只需要一个SessionFactory就够了,但是当你的项目要操作多个时,那你必须为每个指定一个SessionFactory。SessionFactory在Hibernate中实际起到了一个缓冲区的作用,它缓冲了Hibernate自动生成的SQL语句和一些其它的映射数据,还缓冲了一些将来有可能重复利用的数据。

Configuration接口Configuration接口的作用是对Hibernate进行配置,以及对它进行启动。hibernate工作原理在Hibernate的启动过程中,Configuration类的实例首先定位映射文档的位置,读取这些配置,然后创建一个SessionFactory对象。

Query和Criteria接口Query接口让你方便地对及持久对象进行查询,它可以有两种表达方式:HQL语言或本地的SQL语句。Query经常被用来绑定查询参数、限制查询记录数量,并最终执行查询操作。Criteria接口与Query接口非常类似,它允许你创建并执行面向对象的标准化查询。值得注意的是Query接口也是轻量级的,它不能在Session之外使用。

Callback接口当一些有用的事件发生时――例如持久对象的载入、存储、删除时,Callback接口会通知Hibernate去接收一个通知消息。一般而言,Callback接口在用户程序中并不是必须的,但你要在你的项目中创建审计日志时,你可能会用到它。以下是它的策略接口:

*主键的生成(IdentifierGenerator接口)

*本地SQL语言支持(Dialect抽象类)

*缓冲机制(Cache和CacheProvider接口)

*JDBC连接管理(ConnectionProvider接口)

*事务管理(TransactionFactory,Transaction,和TransactionManagerLookup接口)

*ORM策略(ClassPersister接口)

*属性访问策略(PropertyAccessor接口)

*代理对象的创建(ProxyFactory接口)


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-25140-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...