`
zyn010101
  • 浏览: 321383 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

hibernate的五个核心接口

 
阅读更多
Hibernate作为持久成中间件,它的具体实现对与上层调用是透明的,即上层通过接口来调用Hibernate的具体实现,所以对于入门级别的讨论来说,自然应该先从接口开始了。
 
所有的Hibernate应用都会访问它的5个核心接口,分别如下:
Configuration接口:
SessionFactory接口:
Session接口:
Transaction接口:
Query和Criteria接口:
 
分别简单介绍一下:
1、Configuration接口
Configuration用于配置并启动Hibernate。Hibernate应用通过Configuration的实例来指定对象-关系映射文件,或通过Configuration动态配置Hibernate的属性,然后通过Configuration来创建相应的 SessionFactory实例。
 
2、SessionFactory接口
一个SessionFactory对应一个数据源,它是个重量级对象,不可随意生成多个实例。对于一般的单数据库应用来说,只需要一个 SessionFactory就足够了。当然如果有多个数据库的话,还是需要为每个数据库生成对应的SessionFactory。它是线程安全的,同一个实例可以被应用中的多个线程共享。
也许你会很好奇,SessionFactory为什么是重量级对象呢?我也同样好奇,通过查看Hibernate的源码,发现 SessionFactory存放了大量预定义的SQL语句以及映射元数据,所以自然需要很大的缓存了,同时需要一定的CPU时间来计算生成。想想 Hibernate的这个设计是很有意义的,因为有了Mapping文件,很多SQL语句就已经确定了,只需要动态生成一次就可以了,这个设计也是为了提高持久化的效率。
 
3、Session接口
从SessionFactory中可以获得Session实例。
Session接口是Hibernate应用中使用最广泛的接口了,它是持久化管理器,提供添加、更新、删除、加载、查询对象。Session 不是线程安全的,所以应避免多个线程共享同一个Session实例。Session是轻量级对象,它的创建和销毁不需要太多资源,这意味着在应用中可以经常创建和销毁Session对象。
Session有一个缓存,称之为Hibernate的一级缓存,它存放当前工作单元加载的持久化对象,每个Session都有自己的缓存,缓存中的对象只能被当前工作单元访问。
 
4、Transaction接口
Transaction是Hibernate的数据库事务接口,它对底层道德事务接口进行了封装,底层事务接口包括:
    JDBC API
    JTA(Java Transaction API)
    CORBA(Common Object Requet Broker Architecture) API
Hibernate应用可以通过一致Transaction接口来声明事务边界,这有助于应用可以在不同的环境或容器中移植。具体的事务实现使用在Hibernate.properties中进行指定。
 
5、Query和Criteria接口
这两个是Hibernate的查询接口,用于向数据库查询对象,以及控制执行查询的过程。Query实例包装了一个HQL(Hibernate Query Language)来查询。Criteria接口完全封装了基于字符串形式的查询语句,比Query更面向对象,Criteria更擅长执行动态查询。
 
以上为5个核心接口,当然Hibernate不仅仅只有这5个接口了,还有回调接口、映射类型接口、可扩展的接口等等,但这些接口不同于以上的5个核心接口,因为这些接口在一般的Hibernate中不一定能用到,所以暂不提及,在以后的高级应用中再做详述吧
分享到:
评论

相关推荐

    Hibernate的五个核心接口介绍.png

    Hibernate的五个核心接口 Configuration SessionFactory Session Transcation Query和Criteria

    hibernate中五个核心接口

    关于hibernate核心接口的描述,其中能加深对hibernate的理解

    Hibernate的核心接口与类

    Hibernate的核心接口与类

    Hibernate核心接口

    Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。

    Hibernate的五个核心接口介绍

    绍Hibernate的五个核心接口

    Hibernate教程03_Hibernate核心开发接口介绍

    http://blog.csdn.net/e421083458/article/details/8794127 该源码为Hibernate教程配套源码

    hibernate的核心接口--Session

    Session是Hibernate中应用最频繁的接口,Session也被称为持久化管理器,它负责所有的持久化工作,负责管理持久化对象的生命周期,提供第一级别的高级缓存来保证持久化对象的数据与数据库同步

    Hibernate3.6.10核心API

    Hibernate3.6.10核心编程接口API文档

    Hiberante中的五大核心接口.txt

    Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。下面...

    hibernate核心包

    Hibernate3.jar hibernate核心包 antlr-2.7.6.jar 一个语言转换工具(Hibernate利用它实现 HQL 到 SQL 的转换模板相关操作需要包) c3p0-0.9.1.jar c3p0数据源实现的jar文件 cglib.jar CGLIB 字节码解释器 commons-...

    T21.2_Hibernate核心接口与类 java 经典教程 经典教材

    T21.2_Hibernate核心接口与类 java 经典教程 经典教材

    Hibernate核心思想与接口简介

    主要介绍了Hibernate核心思想与接口的相关内容,需要的朋友可以参考下。

    Hibernate体系结构的概要图

    Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。这6个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务...

    J2EE企业级项目开发-3期(KC007) 5.3 探究Hibernate之核心接口文档.doc

    J2EE企业级项目开发-3期(KC007) 5.3 探究Hibernate之核心接口文档.doc 学习资料 复习资料 教学资源

    Hibernate关键知识点大全

    Hibernate、JPA、JTA 核心接口

    hibernate4.3完整jar包

    Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java...Hibernate的核心接口一共有6个,分别为:Session、SessionFactory、Transaction、Query、Criteria和Configuration。

    hibernate api

     Hibernate的核心接口一共有5个,分别为:Session、SessionFactory、Transaction、Query和Configuration。这5个核心接口在任何开发中都会用到。通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制。

    Hibernate5快速学习步骤

    本章学习目标  Hibernate 初认识  Hibernate 的HelloWorld  hibernate.cfg.xml 配置详解  *.hbm.xml 对象映射文件... Hibernate 核心接口详解  抽取HibernateUtil 工具类  使用Session 接口进行增删改查

    Hibernate框架 jar 架包 开发详解

    Hibernate 简介 Hibernate 开发流程 Hibernate 配置文件 Hibernate 核心接口和类 Hibernate ORM映射 HQL Hibernate 懒加载机制与抓取策略 Hibernate 缓存 Hibernate 锁机制

    Hibernate核心类和接口的详细介绍

    今天小编就为大家分享一篇关于Hibernate核心类和接口的详细介绍,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

Global site tag (gtag.js) - Google Analytics