Hibernate的核心类和接口

Hibernate的核心类和接口

所有的Hibernate应用中都会使用到Hibernate提供的以下几个核心类和接口

1、Configuration类

Configuration类是Hibernate的入口,它负责配置并启动Hibernate。Hibernate的框架通过Configuration实例加载配置文件信息,然后读取指定对象关系映射文件的内容并创建SessionFactory实例。

2、  SessionFactory接口

SessionFactory接口负责初始化Hibernate,一个SessionFactory实例对应一个数据存储源(一般就是指一个数据库)。应用程序从SessionFactory中获得Session实例。SessionFactory具有以下特点。

           (1)线程安全,即同一个SessionFactory实例可以被应用的多个线程共享。

(2)它是重量级的,因为它需要一个很大的缓存,用来存放预定义的SQL语句以及映射元数据等。

所以说,如果一个应用程序中只访问一个数据库,则只需要创建一个全局的SessionFactory实例。

3、  session接口

Session是Hibernate中应用最频繁的接口。Session也被称为持久化管理器,它负责管理所有与持久化相关的操作:如存储、更新、删除和加载对象等。Session具有以下特点。

(1)      单线程,非共享的对象。线程不安全,在设计软件架构时,应该避免多个线程共享同一个session实例。

(2)      Session实例是轻量级的,它的创建和销毁不需要消耗太多的资源。可以为每个请求分配一个Session实例,在每次请求过程中及时创建和销毁session实例。

(3)      Session有一个缓存,它存放当前工作单元加载的对象。Session的缓存被称为hibernate的第一级缓存。

4、  Transaction接口

Transaction接口是Hibernate框架的事务接口。它对底层的事务接口做了封装,包括:JDBC API和JTA。这样,使得Hibernate应用可通过一致的Transaction接口来声明事务边界这有助于应用程序在不同的环境和容器中移植。

5、  Query和Criteria接口

它们是Hibernate的查询接口,用于从数据存储源查询对象及控制执行查询的过程。Query包装了一个HQL(Hibernate Query Language)查询语句;而Cirteria接口完全封装了基于字符串形式的查询语句,比Query更加面向对象,Criteria接口擅长于执行动态查询。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值