Hibernate核心接口简介

接口

  在项目中使用Hibernate框架,非常关键的一点就是要了解Hibernate的核心接口。Hibernate接口位于业务层和持久化层,如图1所示。

  

  图1 Hibernate核心接口的层次架构关系

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

  ·Session接口:Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句。)。但需要注意的是Session对象是非线程安全的。同时,Hibernate的session不同于JSP应用中的HttpSession。这里当使用session这个术语时,其实指的是Hibernate中的session,而以后会将HttpSesion对象称为用户session。

  ·SessionFactory接口:SessionFactroy接口负责初始化Hibernate。它充当数据存储源的代理,并负责创建Session对象。这里用到了工厂模式。需要注意的是SessionFactory并不是轻量级的,因为一般情况下,一个项目通常只需要一个SessionFactory就够,当需要操作多个数据库时,可以为每个数据库指定一个SessionFactory。

  ·Configuration接口:Configuration接口负责配置并启动Hibernate,创建SessionFactory对象。在Hibernate的启动的过程中,Configuration类的实例首先定位映射文档位置、读取配置,然后创建SessionFactory对象。

  ·Transaction接口:Transaction接口负责事务相关的操作。它是可选的,可发人员也可以设计编写自己的底层事务处理代码。

  ·Query和Criteria接口:Query和Criteria接口负责执行各种数据库查询。它可以使用HQL语言或SQL语句两种表达方式。

时间: 2024-12-02 20:03:43

Hibernate核心接口简介的相关文章

深入了解Dojo核心接口简介(一)

Dojo 的强大不仅仅在于它提供的各种控件,还在于它提供的面向对象的http://www.aliyun.com/zixun/aggregation/12894.html">开发模式,以及各种应用级别的框架.除此以外,更值得一提的是:Dojo 提供了很多很强大的核心接口,基于这些接口,我们可以高效快捷的实现应用中所需要的各种逻辑和算法.这些接口支持各种浏览器,使得我们不用再去考虑浏览器差别所带来的各种实现问题. Dojo 的这些接口大大简化了我们的 Web 前端开发的复杂度,使得我们能够在更

深入了解Dojo核心接口简介(二)

核心功能接口 了解了 Dojo 的核心基础接口,我们可以转入 Dojo 的http://www.aliyun.com/zixun/aggregation/17626.html">核心功能接口了.Dojo 包括了大量的强大的核心功能,这些功能给我们的日常开发带来了相当多的帮助和便利.但是正是由于 Dojo 如此的完善和丰富,导致很多读者在使用过程中无暇顾及它所有的方面,很多非常实用的接口至今还不被大多数人所知晓和熟悉.接下来,我们会略过大家都比较熟悉的一些功能接口(如 forEach,add

深入了解Dojo核心接口简介(三)

dojo/query 这个 dojo/query 模块相信读者们也是非常熟悉了,它主要是基于 CSS 的 Selector 来定位并返回相应节点.其实它使用起来非常简单,本小节我们会重点它的一些不太为人知的特殊功能. 先来看一个基本使用方式的示例: 清单 46. dojo/query 简单示例 require(["dojo/query", "dojo/dom"], function(query, dom){ var nl = query(".someCla

hibernate-新手求助!Hibernate中如何把几个核心接口写在一个工具类中?

问题描述 新手求助!Hibernate中如何把几个核心接口写在一个工具类中? 要写一个Struts2+Hibernate 整合的CRUD , 然后不知道怎么把 Session.SessionFactory.Configuration.Transaction这几个类写在 util包中的工具类里?求各位大神解答一下.万分感谢!!! 解决方案 定义一个类,把这些作为内嵌类全部贴过来 解决方案二: http://m.blog.csdn.net/blog/StubbornPotatoes/7705693

Hibernate-HQL Query接口简介

Query接口简介: 1.org.hibernate.Query接口定义有执行查询的方法(该接口解析HQL语句,然后根据配置信息生成SQL语句): 2.Query接口支持方法链编程风格,使得程序代码更为简洁(方法链编程:调用方法后,返回的结果依然是调用这个方法的对象,可以调用该对象的其他方法) 3.Query实例的创建: a.Session的createQuery()方法创建Query实例 b.createQuery方法包含一个HQL语句参数,createQuery(hql) 4.Query执行

SQLite教程(二):C/C++接口简介_SQLite

一.概述:     在SQLite提供的C/C++接口中,其中5个APIs属于核心接口.在这篇博客中我们将主要介绍它们的用法,以及它们所涉及到的核心SQLite对象,如database_connection和prepared_statement.相比于其它数据库引擎提供的APIs,如OCI.MySQL API等,SQLite提供的接口还是非常易于理解和掌握的.     二.核心对象和接口:     1. 核心对象:     在SQLite中最主要的两个对象是,database_connectio

HIBERNATE核心开发接口介绍

Gender类 package com.zzk.hibernate.model; public enum Gender { MALE, FEMALE } Student类 package com.zzk.hibernate.model; public class Student { private int id; private String name; private int age; private String sex; private boolean good; public boole

第五章 Hibernate核心API介绍与其使用

5.1 Configuration接口5.1.1加载hibernate.cfg.xml并完成系统的配置        Configuration接口的作用是对Hibernate进行配置.并启动Hibernate和连接数据库系统.       在Hibernate的启动过程中,Configuration类的实例首先定位缺省XML配置文件(hibernate.cfg.xml),并读取关的配置项目,然后创建出一个SessionFactory对象.根5.1.2据Configuration对象创建一个Se

[Apache commons系列]DBUtils简介-2.核心类简介

inkfish原创,请勿商业性质转载,转载请注明来源(http://blog.csdn.net/inkfish ). DbUtils是一个小型的类库,不需要也不值得花太长的时间去熟悉每一个类.DbUtils核心其实只有三个类/接口,即QueryRunner .ResultSetHandler 和DbUtls (官方文档中写的是前两个).(来源:http://blog.csdn.net/inkfish)   一.下面先过一下DbUtils的几个包(package):(来源:http://blog.