hibernate学习系列-----(2)hibernate核心接口和工作机制
在上一篇文章hibernate学习系列-----(1)开发环境搭建中,大致总结了hibernate的开发环境的搭建步骤,今天,我们继续了解有关hibernate的知识,先说说这篇文章的主要内容吧:
- Configuration类
- SessionFactory接口
- Session接口
- Transaction接口
- Query和Criteria接口
下面就进行分类别地详细说明:
Configuration类
- 功能描述:Configuration类负责管理Hibernate的配置信息作并根据配置信息启动Hibernate。
- 详细说明:提供数据库的链接参数;数据库连接池以及对象关系文件的配置,通过Configuration类来加载配置信息并且启动hibernate的应用程序
- hibernate的配置方法:(1):使用hibernate.properties文件进行配置;(2)使用xml文件进行配置,也就是“hibernate.cfg.xml”文件,推荐使用后者
SessionFactory接口
- SessionFactory实例对应一个数据存储源,我们的应用程序就是通过SessionFactory实例来获取我们的Session对象,SessionFactory的特点有:
- (1)线程安全,一个SessionFactory实例可以被应用的多个线程共享
- (2)重量级:需要很大的缓存来存储预定义的SQL语句以及映射数据,so,如果我们的应用程序只使用一个数据库,则只需建立一个SessionFactory对象即可
Session接口
- Session又被称之为持久化管理器,它提供了和持久化相关的CRUD操作,在hibernate中应用最为广泛。Session接口有哪些特点呢?
- (1)线程不安全:它代表了我们对数据库的一次操作,因此在开发中应尽量避免多个线程共享同一个Session实例;
- (2)轻量级:它的销毁和创建不需要消耗太多资源;
- (3)hibernate的一级缓存:存放了当前工作单元加载的一些对象,每一个Session都有自己的缓存,缓存中的对象只能被当前的工作单元所使用;
- (4)SessionFactory对象打开:使用完毕后要及时关闭。
Transaction接口
- Transaction接口是hibernate中的事务接口,它包括:JDBC API、JTA,hibernate在进行持久化操作时(CRUD),必须在事务中加以控制。
Query和Criteria接口
- Query和Criteria接口是hibernate中的查询接口:
- (1)Query接口包装了一个HQL(Hibernate Query Language)查询语句。
- (2)Criteria接口比较面向对象,擅长执行动态查询。
hibernate的核心接口就大致说到这儿了,下面说一下hibernate的工作机制,先上图:
这张图还是比较好理解的,我就不再说明。
hibernate学习系列-----(2)hibernate核心接口和工作机制的更多相关文章
- Hibernate 核心接口和工作机制
主要内容 Configuration类 sessionFactory接口 session接口 Transaction接口 Query 和 criteria接口 1.Configuration类 负责管 ...
- Hibernate核心接口和工作原理
Hibernate核心接口和工作原理 Hibernate有五大核心接口,分别是:Session .Transaction .Query .SessionFactory .Configuration . ...
- Hibernate学习一:Hibernate注解CascadeType
http://zy19982004.iteye.com/blog/1721846 ———————————————————————————————————————————————————————— Hi ...
- java虚拟机学习-慢慢琢磨JVM(2-1)ClassLoader的工作机制
ClassLoader的工作机制 java应用环境中不同的class分别由不同的ClassLoader负责加载. 一个jvm中默认的classloader有Bootstrap ClassLoader. ...
- hibernate学习系列-----(9)hibernate对集合属性的操作之Map集合篇
照旧,先新建一个StudentMap.java实体类,将hobby属性使用map集合接口来存放: package com.joe.entity; import java.util.Map; publi ...
- [原创]java WEB学习笔记77:Hibernate学习之路---Hibernate 版本 helloword 与 解析,.环境搭建,hibernate.cfg.xml文件及参数说明,持久化类,对象-关系映射文件.hbm.xml,Hibernate API (Configuration 类,SessionFactory 接口,Session 接口,Transaction(事务))
本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...
- Hibernate详解(5)——Hibernate核心接口和工作原理
Hibernate核心接口 Hibernate有五大核心接口,分别是:Session Transaction Query SessionFactoryConfiguration .这五个接口构成了Hi ...
- hibernate学习系列-----(4)hibernate基本查询上篇:HQL基本查询
紧接着上一篇,今天继续hibernate的学习总结,来聊一聊hibernate的基本查询方法,先说说HQL(hibernate Query Language):它是官方推荐的查询语言.在开始写代码之前 ...
- hibernate学习系列-----(7)hibernate对集合属性的操作之List集合篇
今天要写的内容其实不多,本打算将hibernate对集合的操作的内容直接归结为一篇的,但想一想,还是分开写的比较好,毕竟前面的已经发布出去来了,废话不多说,开始吧! 依旧新建一个StudentList ...
随机推荐
- WCF信道绑定代码
监听端创建信道Listener,代码 using System; using System.Collections.Generic; using System.Linq; using System.T ...
- 汕头市队赛 SRM 08 B
B-3 SRM 08 描述 给长度为 n 的数列 A 和长度为 m 的数列 B,问有多少长度为 m 的数列 C 满足 输入格式 第一行俩整数 n 和 m 第二行 n 个整数 ,表示数列 A 第三行 m ...
- SoundPool 播放提示音
SoundPool 一个声音播放的辅助类,从名字可以看出,它具有 “池”的能力,它先加载声音文件到内存,以支持多次播放声音文件. 特点 SoundPool适合 短小的 声音文件 SoundPool适合 ...
- C# 代码片段
StringBuilder拼接小技巧 Stopwatch watch = new Stopwatch(); watch.Start(); var sb = new StringBuilder(); ; ...
- wav格式
转自: http://www.cnblogs.com/tiandsp/archive/2012/10/17/2728585.html 起始地址 占用空间 本地址数字的含义 00H 4byte RIFF ...
- BeeUISignal详解
https://github.com/i5ting/Bee_Tutorial/wiki/BeeUISignal%E8%AF%A6%E8%A7%A3 BeeUISignal是beeframework的核 ...
- linux反汇编
使用objdump参数可以: -a, --archive-headers 显示压缩头信息 -f, --file-headers 显示目录头总览 -p, --private-h ...
- kvm qemu内幕介绍
转自:http://blog.csdn.net/wj_j2ee/article/details/7978259目录 1 硬件虚拟化技术背景 2 KVM的内部实现概述 2.1 KVM的抽象对象 2.2 ...
- 非常好!!!---bash转义序列笔记---打印语句printf用法【转】
转自:http://bbs.chinaunix.net/forum.php?mod=viewthread&tid=2318684&fromuid=23571134 本教程由 惟吾无为 ...
- FolderSize磁盘占用详情工具
FolderSize