【SSH】Hibernate:核心类和接口

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

Configuration :

Configuration类服装管理hibernate 的配置信息。Hibernate运行时需要获取一些底层实现的基本信息,包括数据的URL、数据库用户、数据库用户密码、数据库JDBC的驱动类。之前曾经提过hibernate的两种配置文件方式:使用XML(hibernate.cfg.xml),和实用(hiberante.properties)。曾提到使用xml进行配置的便利性和简易性。当执行代码:

  Configuration config= new configuration().configure();

Hibernate 会自动在当前CLASSPATH中搜寻xml文件,并自动加载到内存中,服务下步操作。

SessionFactory :

SessionFactory 负责创建Session 的实例,通常通过Cofinguation实例构建SessionFactory :

   Configuration config= new configuration().configure();
   SessionFactory sessionFactory = conifg.buildSessionFactory();

其中config 会根据数据库信息构造并配置实例sessionFactory。之后便不再相关联,互不影响。如如果应用中需要访问多个数据库,那么只要针对每个数据库,分别创建SessionFactory 实例就可以了。

SessionFacotry 采取了线程安全的设计,可由多个线程并发调用,所以一个应用中针对一个数据库可以共享一个SessionFactory。

Session :

它是hibernate持久化操作的基础,相当于JDBC Connection对于JDBC一样。

Session 贯穿了hibernate的持久化管理器的核心,提供了save、update、delete、find(Query或Criteria)等方法。他使得我们可以透明地完成对对象的增删改查。

值得注意的是,hibernate 中的session 是非线程安全的,所以一个session只能由一个进程使用。

Session 实例创建:

      Configuration config= new configuration().configure();
      SessionFactory sessionFactory = conifg.buildSessionFactory();
      Session  session = sessionFactory.openSession();

完成session实例创建后,就可以调用它的增删改查的方法了。

Query:

Query接口让你方便地对数据库及持久对象进行查询,它可以有两种表达方式:HQL语言或本地数据库的SQL语句。Query经常被用来绑定查询参数、限制查询记录数量,并最终执行查询操作。

Criteria:

Criteria接口与Query接口非常类似,允许创建并执行面向对象的标准化查询。值得注意的是Criteria接口也是轻量级的,它不能在Session之外使用。

Transaction

Transaction 接口是一个可选的API,可以选择不使用这个接口,取而代之的是Hibernate 的设计者自己写的底层事务处理代码。 Transaction 接口是对实际事务实现的一个抽象,这些实现包括JDBC的事务、JTA 中的UserTransaction、甚至可以是CORBA 事务。之所以这样设计是能让开发者能够使用一个统一事务的操作界面,使得自己的项目可以在不同的环境和容器之间方便地移植。

这是从网上找到的一张关于hibernate核心类的关系图,觉得挺好的就引用下。它很形象地说明类之间的关系和顺序。

时间: 2024-10-22 14:03:39

【SSH】Hibernate:核心类和接口的相关文章

Hibernate核心类和接口详细介绍

一.hiobernate核心类和接口预览图 二.hibernate.properties 这个文件是以前老版本使用的 类似于hibernate.cfg.xml文件:作用和hibernate.cfg.xml一致. 三.hibernate.cfg.xml (1)详细介绍 ①该文件主要用于指定各个参数,是hibernate核心文件 ②默认放在src目录下,也可以放在别的目录下. ③指定连接数据库的驱动.用户名.密码.url.连接池.. ④指定对象关系映射文件的位置. ⑤也可使用hibernate.pr

Hibernate核心类和接口

一:hibernate的核心类和接口 1.Configuration 类 它的用处是: a.      读取hibernate.cfg.xml b.      管理对象关系映射文件 <mapping resource=""> c.      加载hibernate 的驱动,url ,用户.. d.      管理hibernate配置信息 2.SessionFactory (会话工厂) a.      可以缓存sql语句和数据(称为session级缓存)!! b.     

Hibernate中的五大核心类和接口

Hibernate中的五大核心类和接口 Configuration(类) : 加载配置文件hibernate.cfg.xml文件中的配置信息,从而得到: 1).hibernate的底层信息: 数据库连接,jdbc驱动,方言(dialect),用户名 ,密码 2).hibernate的映射文件(*.hbm.xml) SessionFactory(接口): 通过configuration创建的sessionFactory, 可以用来获得session openSession(); sessionFa

SpringMVC核心类与接口

DispatcherServlet   -- 前置控制器 HandlerMapping接口 -- 处理请求的映射 HandlerMapping接口的实现类: SimpleUrlHandlerMapping  通过配置文件,把一个URL映射到Controller DefaultAnnotationHandlerMapping  通过注解,把一个URL映射到Controller类上 HandlerAdapter接口 -- 处理请求的映射 AnnotationMethodHandlerAdapter类

Spring-MVC旅程(一)——核心类及接口的简介

1.Spring-MVC是为web开发准备的MVC框架,spring2.5版本开始支持注解配置,使得易用性得到大幅提高. 2.spring包含的核心类和接口 1).DispatcherServlet类(前置控制器)=>主要用作职责调度工作,本身主要负责流程的控制: 文件上传解析,如果请求类型是multipart将通过MultipartResolver进行文件上传解析: 通过HandlerMapping,将请求映射到处理器(返回一个HandlerExecutionChain,它包括一个处理器.多个

Spring MVC学习------------核心类与接口

核心类与接口: 先来了解一下,几个重要的接口与类.现在不知道他们是干什么的没关系,先混个脸熟,为以后认识他们打个基础. DispatcherServlet   -- 前置控制器 HandlerMapping接口 -- 处理请求的映射 HandlerMapping接口的实现类: SimpleUrlHandlerMapping  通过配置文件,把一个URL映射到Controller DefaultAnnotationHandlerMapping  通过注解,把一个URL映射到Controller类上

Hibernate核心类用法-使用Transaction管理事务

一个典型的事务应该使用下面的形式 在创建完Session对象后即使用beginTransaction()启动事务 从此开始直到commit()之间的代码 都会处于同一个事务中 这两个函数之间所有的数据库代码都会在commit()时一次性提交 在提交时 如果某一句代码执行出现异常 就会回滚这一次事物之间的所有执行代码 public User getUser(String username) throws HibernateException { Session session = null; Tr

hibernate相关类与接口

Configuration 类: •Configuration 类负责管理 Hibernate 的配置信息.包括如下内容: –Hibernate 运行的底层信息:数据库的URL.用户名.密码.JDBC驱动类,数据库Dialect,数据库连接池等(对应 hibernate.cfg.xml 文件). –持久化类与数据表的映射关系(*.hbm.xml 文件) •创建 Configuration 的两种方式 –属性文件(hibernate.properties): Configuration cfg =

Hibernate核心接口和类

“计应134(实验班)林曙光” Hibernate的核心类和接口一共有6个,分别为:Session.SessionFactory.Transaction.Query.Criteria和Configuration.这6个核心和类接口在任何开发中都会用到.通过这些接口,不仅可以对持久化对象进行存取,还能够进行事务控制.下面对这6个核心接口和类分别加以介绍. Session Session接口负责执行被持久化对象的CRUD操作(CRUD的任务是完成与数据库的交流,包含了很多常见的SQL语句.).但需要