`

Hibernate的5大核心接口

阅读更多
以下5 个核心接口几乎在任何实际开发中都会用到。通过这些接口,不仅可以存储和获得持久对象,并且能够进行事务控制。
Session 接口
Session 接口对于Hibernate 开发人员来说是一个最重要的接口。然而在Hibernate 中,实例
化的Session是一个轻量级的类,创建和销毁它都不会占用很多资源。这在实际项目中确实很重要,
因为在客户程序中,可能会不断地创建以及销毁Session 对象,如果Session 的开销太大,会给系
统带来不良影响。但值得注意的是Session 对象是非线程安全的,因此在设计中,最好是一个
线程只创建一个Session对象。
在Hibernate 的设计者的头脑中,是将session看作介于数据连接与事务管理一种中间接口。
我们可以将session想象成一个持久对象的缓冲区,Hibernate能检测到这些持久对象的改变,并及
时刷新数据库。我们有时也称Session是一个持久层管理器,因为它包含这一些持久层相关的操作,
诸如存储持久对象至数据库,以及从数据库从获得它们。注意,Hibernate 的session不同于JSP
应用中的HttpSession。
SessionFactory 接口
一个设计模式--工厂模式,用户程序从工厂类SessionFactory中取得Session 的
实例。SessionFactory并不是轻量级的!实际上它的设计者的意图是让它能在整个
应用中 共 享。典型地来说,一个项目通常只需要一个SessionFactory就够了,但是要操
作多个数据库时,那必须为每个数据库指定一个SessionFactory。
SessionFactory在Hibernate中实际起到了一个缓冲区的作用,它缓冲了Hibernate自动生成的SQL
语句和一些其它的映射数据,还缓冲了一些将来有可能重复利用的数据.
Configuration 接口
Configuration 接口的作用是对Hibernate 进行配置,以及对它进行启动。在Hibernate 的启动
过程中,Configuration 类的实例首先定位映射文档的位置,读取这些配置,然后创建一个
SessionFactory对象。虽然Configuration 接口在整个Hibernate 项目中只扮演着一个很小的角色,
但它是启动hibernate 时所遇到的每一个对象。
Transaction 接口
Transaction 接口是一个可选的API,可以选择不使用这个接口,取而代之的是Hibernate 的
设计者自己写的底层事务处理代码。 Transaction 接口是对实际事务实现的一个抽象,这些实现包
括JDBC的事务、JTA 中的UserTransaction、甚至可以是CORBA 事务。之所以这样设计是能让开
发者能够使用一个统一事务的操作界面,使得自己的项目可以在不同的环境和容器之间方便地移值。
Query 和Criteria接口
Query接口让你方便地对数据库及持久对象进行查询,它可以有两种表达方式:HQL语言或本
地数据库的SQL语句。Query经常被用来绑定查询参数、限制查询记录数量,并最终执行查询操作。
Criteria接口与Query接口非常类似,允许创建并执行面向对象的标准化查询。值得注意的是Query接口也是轻量级的,
它不能在Session之外使用。
Callback 接口
当一些有用的事件发生时--例如持久对象的载入、存储、删除时,Callback 接口会通知
Hibernate去接收一个通知消息。一般而言,Callback接口在用户程序中并不是必须的,但要在
项目中创建审计日志时,可能会用到它。
(HQL子句本身大小写无关,但是其中出现的类名和属性名必须注意大小写区分。)
分享到:
评论

相关推荐

    Hibernate核心接口

    "Hibernate核心接口" Hibernate 是一种流行的 Java 持久化框架,它提供了多种核心接口来实现数据的持久化操作。这些核心接口是 Hibernate 的基础组件,任何 Hibernate 应用程序都需要使用它们。下面将详细介绍这五...

    hibernate中五个核心接口

    ### Hibernate中的五个核心接口 #### 一、概述 Hibernate 是一款强大的对象关系映射(ORM)框架,它简化了 Java 应用程序与数据库之间的交互过程。通过将 Java 对象映射到数据库表中,Hibernate 提供了一种更加...

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

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

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

    以上就是Hibernate核心开发接口的简要介绍。在实际开发中,通过熟练掌握这些接口和概念,我们可以高效地利用Hibernate进行数据库操作,降低系统的耦合度,提升开发效率。通过阅读给出的源码s2sh_Hibernate03_CoreAPI...

    Hibernate的五个核心接口介绍

    Hibernate五个核心接口介绍 Hibernate是一个基于Java的开源持久层框架,它提供了五个核心接口,分别是Configuration接口、SessionFactory接口、Session接口、Transaction接口和Query与Criteria接口。这些接口是...

    Hibernate 3.2核心包

    5. Criteria API:这是一个更加面向对象的查询方式,允许开发者通过构建Criteria对象来构造查询,比传统的Query接口更加灵活和类型安全。 6. Native SQL支持:虽然Hibernate主要关注ORM,但它也允许直接执行原生的...

    hibernate5相关jar包

    1. Hibernate核心库:`hibernate-core.jar` Hibernate的核心库提供了ORM的基本功能,包括实体管理、会话管理、查询服务等。它包含了`SessionFactory`、`Session`、`Query`等关键接口和类,以及对JPA规范的支持。 2...

    Hibernate曾删改查接口实现

    "Hibernate曾删改查接口实现"这个主题,主要涉及的是如何利用Hibernate的核心接口进行数据的增、删、改、查操作。下面将详细讲解这些知识点。 **1. Hibernate基本概念** Hibernate是一个开源的ORM框架,它的核心是...

    springmvc, spring5.x , hibernate5.x 整合

    在Spring 5.x中,还可以利用Spring Data JPA,它提供了更高级别的抽象,简化了DAO层的编写,只需要定义Repository接口,大部分数据库操作即可自动生成。 总的来说,这个整合项目将涉及Web开发的多个层面,包括Web层...

    Hibernate Hibernate5 讲义 PDF

    Hibernate工作原理的理解是掌握该框架的核心内容。Hibernate使用配置好的映射文件和主配置文件,在运行时自动将数据对象转换成数据库中的记录,并且可以将数据库记录转换回数据对象。Hibernate的懒加载、缓存策略...

    hibernate-3.2.6 核心jar包

    2. **Session接口**:是应用程序与Hibernate之间的主要接口,负责执行CRUD操作(创建、读取、更新、删除)。 3. **SessionFactory**:负责创建Session对象,它是线程安全的,通常在应用启动时创建一次。 4. **...

    hibernate5所需jar包

    综上所述,"hibernate5所需jar包"指的是进行Hibernate 5开发时必要的依赖库,包括Hibernate的核心组件、JPA支持、验证库以及数据库驱动等。正确管理和配置这些JAR文件是成功使用Hibernate 5进行ORM的关键步骤。

    hibernate-core 核心jar包

    `hibernate-core`是Hibernate的核心库,包含了执行ORM功能所需的主要组件。 在Hibernate-Core中,主要包含以下几个关键模块和概念: 1. **Session接口**:它是Hibernate的主要工作接口,提供了对数据库的操作方法...

    Hibernate核心思想与接口简介

    Hibernate核心思想与接口简介 Hibernate 是一个采用 ORM 机制的开源框架,核心思想是将表与表之间的操作,映射成对象和对象之间的操作,这样简化了持久层的代码,减轻了程序员的负担。ORM 是一种为了解决面向对象与...

    hibernate 常用核心包

    `javax.persistence.EntityManager` 和 `javax.persistence.EntityManagerFactory` 是 JPA 中的核心接口,它们提供了类似于 Hibernate `Session` 和 `SessionFactory` 的功能。 3. **hibernate-validator**: 这是 ...

    hibernate5类包

    这个“hibernate5类包”包含了Hibernate 5.2.11.Final版本的所有核心组件和其他相关模块,使得开发者能够方便地在项目中集成和使用Hibernate。 在Hibernate 5.2.11.Final版本中,主要包含以下几个关键知识点: 1. ...

    hibernate核心jar包

    **标题:“Hibernate核心jar包”** 在Java世界中,Hibernate是一个流行的对象关系映射(ORM)框架,它简化了数据库操作,将Java对象与数据库表之间的交互转化为简单的API调用。核心jar包是Hibernate框架的基础,...

    hibernate开发核心5.2jar包 带mysql驱动

    在这个压缩包中,包含的是用于开发的Hibernate核心库以及适用于MySQL数据库的驱动,同时整合了log4j日志框架,这些都是构建高效、稳定且可维护的JavaWeb应用的基础组件。 1. Hibernate 5.2:作为ORM框架的领导者,...

    Hibernate5需要的jar包。

    1. **hibernate-core-5.x.x.jar**:这是Hibernate的核心库,包含了ORM的主要实现,如实体管理、会话接口、查询语言等。 2. **hibernate-entitymanager-5.x.x.jar**:提供对JPA(Java Persistence API)的支持,使得...

Global site tag (gtag.js) - Google Analytics