专栏首页行者常至Hibernate的5个核心接口:Session、SessionFactory、Transaction、Query和Configuration

Hibernate的5个核心接口:Session、SessionFactory、Transaction、Query和Configuration

Configuration接口:

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

SessionFactory接口:

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

Session接口:

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

Transaction接口

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

Query和Criteria接口

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

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 常用 Git 命令清单

    一般来说,日常使用只要记住下图6个命令,就可以了。但是熟练使用,恐怕要记住60~100个命令。

    qubianzhong
  • 012.golang 接口interface

    qubianzhong
  • 状态管理-Session

    qubianzhong
  • 使用Robot Framework进行接口自动化

    接口:本质上不需要关注具体事项,对接并不理解的程序或服务时,需要遵守的一些了格式或者流程规定。

    zx钟
  • 两个你必须要重视的 Chrome 80 策略更新!!!

    Chrome 80 版本在 2020年2月份 正式发布了,随后又陆续更新了几个小版本,本次升级主要是更新了安全修复和稳定性改进以及用户体验优化。

    ConardLi
  • 掌握Chrome开发工具:新一代前端开发技术

    你可能已经熟悉了Chrome开发工具的基本功能。: DOM检查器、样式面板和JavaScript控制台。 但也有一些不太为人所知的特性可以显著提高你调试或开发应...

    疯狂的技术宅
  • Debug的那些事儿

    我们写代码的多多少少有一些出错的几率,掌握Debug还是很重要的,记得第一次入行写企业系统时,对此一无所知,后来还是去网路上以及问前辈,我印象中还是在博客园里看...

    icepy
  • Google开源了可加速文本生成的AI模型LaserTagger

    这就是Google研究人员开发LaserTagger的原因,LaserTagger是一种开放源代码的文本编辑模型,该模型可以预测将源文本转换为目标文本的一系列编...

    AiTechYun
  • 超级 PowerBI 来了 各种外挂开启

    Power BI Premium 已经作为 Analysis Service 的超集存在。

    BI佐罗
  • 微软发布 PowerBI 开发路线图 未来12个月

    这三部分内容在此前不久结束的 PASS 2018 大会中有完整介绍,不妨回顾文章:

    BI佐罗

扫码关注云+社区

领取腾讯云代金券