1.Configuration接口
configuration对象用于配置并跟启动Hibernate。Hibernate应用通过Configuration实例来获得对象-关系映射文件中的元数据,以及动态配置Hibernate的属性,然后创建SessionFactory实例
2.SessionFactory接口
一个SessionFactory实例对应一个数据存储源,应用从SessionFactory中获取Session实例。SessionFactory有以下特点:
1.它是线程安全的,这意味着它的同一个实例可以被应用的多个线程共享。
2.它是重量级的,这意味着不能随意创建或销毁它的实例。如果应用只访问一个数据库,只需要创建一个SessionFactory实例,在应用初始化的时候创建该实例。如果应用同时访问多个数据库,则需要为每个数据库创建一个单独的SessionFactory实例。
之所以称SessionFactory是重量级的,因为它需要一个很大的缓存,用来存放预定义的SQL语句及映射元数据等。用户还可以为SessionFactory配置一个缓存插件,这个缓存插件被称为Hibernate的二级缓存,该缓存用来存放被工作单位读过的数据,将来其他工作单元可能会重用这些数据,因此这个缓存中的数据能被所有的工作单元共享。一个工作单元通常对应一个数据库事务。
3.Session接口
session接口是Hibernate应用中最广泛的接口。Session也被称为持久化管理器。它提供了和持久化相关的操作。Session有以下特点:
1.它不是线程安全的,因此在设计软件架构的时候,应该避免多个线程共享一个Session实例。
2.Session实例是轻量级的,所谓轻量级,是指它的创建和销毁不需要消耗过多的资源。这意味着在程序中可以经常地创建或者销毁Session对象,如为每个客户请求分配单独的Session实例,或者为每个工作单元分配单独的Session实例。
session有一个缓存,被称为Hibernate的第一级缓存,它存放被当前工作单元加载的对象,每个Session实例都有自己的缓存,这个Session实例的缓存只能被当前的工作单元访问。
Transaction接口
Transaction接口是Hibernate的数据库的数据库事务接口,它对底层的事务接口做了封装。底层事务接口包括:
1.jdbc API
2.JTA(JAVA Transation API)
3.CORBA(Common Object Request Broker Architecture) API
分享到:
相关推荐
"hibernate 常用核心包"包含了 Hibernate 框架中必要的组件,使得开发者可以进行基本的数据库操作和应用程序开发。 在 Hibernate 中,以下几个核心包是至关重要的: 1. **hibernate-core**: 这是 Hibernate 的核心...
让我们详细了解一下`HibernateSessionFactory`类中的关键方法和其背后的原理。 1. **配置和初始化SessionFactory** `HibernateSessionFactory`类通过`cfg.configure(CONFIG_FILE_LOCATION)`来读取配置文件(默认为...
以下是对标题、描述中提到的Hibernate常用jar包的详细解释: 1. **antlr-2.7.6**: ANTLR(ANother Tool for Language Recognition)是一个强大的解析器生成器,用于读取、处理、执行或翻译结构化文本或二进制文件。...
下面我们将详细探讨Hibernate常用JAR包及其作用。 1. **hibernate-core.jar**:这是Hibernate的核心库,包含了主要的ORM功能,包括实体管理、持久化操作、事务管理和查询服务。它提供了对Hibernate Session和...
以上就是关于Hibernate常用jar包的一些介绍,每个库都有其独特的功能,共同构成了Hibernate的强大ORM框架。理解并熟练掌握这些库的用途,对于有效地利用Hibernate进行开发至关重要。在实际项目中,开发者还需要根据...
本主题将详细探讨Hibernate中的常用包及其对应的XML配置,帮助你深入理解Hibernate的工作原理。 1. **org.hibernate**:这是Hibernate的核心包,包含了所有基本的API和接口,如SessionFactory、Session、Query等。...
以下是对压缩包文件中包含的Hibernate常用jar包的详细解析: 1. **hibernate3.jar**:这是Hibernate的核心库,包含了所有基本的ORM功能,如实体管理、事务处理、查询语言等。其中,`SessionFactory`是整个ORM的核心...
在Hibernate框架中,ORM模型简化了数据库查询的过程,开发者可以利用ORM框架提供的查询接口,以对象的方式操作数据,而无需深入了解数据库的底层结构。这样,开发者能够专注于业务逻辑的实现,而不是繁琐的数据库...
一、Hibernate常用jar包 1. **hibernate-core.jar**:这是Hibernate的核心库,包含了所有必要的API和实现,包括Entity管理、Session接口、Query语言等。 2. **hibernate-entitymanager.jar**:提供了JPA(Java ...
本资料集主要涵盖了Hibernate的基础知识、常用操作以及面试常见问题,旨在帮助开发者深入理解Hibernate并提升面试技能。 1. **Hibernate简介** Hibernate是一个开源的ORM(Object-Relational Mapping)框架,它...
下面将详细介绍这五个核心接口的功能和使用方法。 #### 二、Session 接口 Session 接口是 Hibernate 中最常用的一个接口,它是执行 CRUD(Create、Read、Update、Delete)操作的主要工具。Session 提供了多种操作...
查询数据是Hibernate中最常用的功能。主要有以下几种方式: - HQL(Hibernate Query Language):这是Hibernate特有的查询语言,语法类似SQL,但面向对象。 - Criteria API:提供了一种更加面向对象的查询方式,...
在这个“hibernate 3.5.5 常用jar包”中,包含了运行和开发基于Hibernate 3.5.5应用所需的核心库。以下是关于Hibernate 3.5.5及其相关jar包的关键知识点: 1. **对象关系映射(ORM)**:ORM是将数据库中的表映射为...
本压缩包“ssh-hibernate常用包.rar”包含了学习Hibernate5时所需的基础导入jar包,特别适合初学者进行数据库管理与Java对象的映射学习。 1. **Hibernate5**: Hibernate 5是ORM(Object-Relational Mapping)框架的...
Hibernate是一款强大的对象关系映射(ORM)框架,它在Java应用程序中起到了桥梁的作用,将复杂的数据库操作转换为对Java对象的操作。在这个压缩包中,包含了Hibernate开发所必需的一些核心库和依赖,使得开发者能够...
### 常用Hibernate映射配置详解 #### 1. hibernate-mapping节点解析 `hibernate-mapping`节点是Hibernate映射文件中的顶级节点,用于定义一系列配置选项,控制整个映射文件的行为和映射规则。这些配置包括数据库...
这个压缩包“hibernate3.5.5常用jar包搜集”包含了用于使用Hibernate 3.5.5版本进行开发所需的库文件。 在Hibernate 3.5.5中,主要的jar包包括以下几类: 1. **Hibernate Core**:这是Hibernate的核心库,包含ORM...
在这个"struts2 spring hibernate常用jar包"中,包含了这三个框架的核心库和其他相关依赖,使得开发者能够快速搭建开发环境。 Struts2是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它旨在简化...