Hibernate(一)---Hibernate简介
来源:互联网 发布:网络驱动器没有密码 编辑:程序博客网 时间:2024/05/23 07:25
(一)Hibernate概述
Hibernate是一个Java领域的持久化的ORM框架;
(1)对象的持久化
· 狭义的理解:“持久化”仅仅把对象永久保存到数据库中;
· 广义的理解: “持久化”包括和数据库相关的各种操作:
~ 保存:把对象永久保存到数据库中。
~更新:更新数据库中对象(记录)的状态。
~ 删除:从数据库中删除一个对象。
~ 查询:根据特定的查询条件,把符合查询条件的一个或多个对象从数据库加载到内存中.
~加载:根据特定的OID(即数据库中的主键),把一个对象从数据库加载到内存中。
(2)ORM(Object/Relation Mapping): 对象/关系映射
~ORM思想:将关系型数据库中表中的记录映射成为对象,以对象的形式展现,可以把数据库的操作转化为对对象的操作;
~ORM采用元数据(描述数据的数据)来描述对象-关系映射细节,元数据通常采用XML格式,并且存放在专门的对象-关系映射文件中.
(二)Hibernate的核心
~~Configuration类负责管理hibernate的配置信息。包括如下内容:
–Hibernate 运行的底层信息:数据库的URL、用户名、密码、JDBC驱动类,数据库Dialect,数据库连接池等(对应 hibernate.cfg.xml 文件)。
–持久化类与数据表的映射关系(*.hbm.xml 文件)
–创建 Configuration 的两种方式
①属性文件(hibernate.properties):
Configuration cfg = new Configuration();
②Xml文件(hibernate.cfg.xml)
Configuration cfg = new Configuration().configure();
Configuration 的 configure 方法还支持带参数的访问:
File file = new File(“simpleit.xml”);
Configuration cfg = new Configuration().configure(file);
~~SessionFactory接口
· 针对单个数据库映射关系经过编译后的内存镜像,是线程安全的。
· SessionFactory 对象一旦构造完毕,即被赋予特定的配置信息。
· SessionFactory是生成Session的工厂。
· 构造 SessionFactory 很消耗资源,一般情况下一个应用中只初始化一个 SessionFactory 对象。
~~Session接口:持久化类与 Session 关联起来后就具有了持久化的能力(即可以对数持久化对象进行CRUD操作)
~~Transaction(事务):代表一次原子操作,它具有数据库事务的概念。所有持久层都应该在事务管理下进行,即使是只读操作。
Transaction tx = session.beginTransaction();
· 常用方法:
– committ():提交相关联的session实例;
– rollback():撤销事务操作;
– wasCommitted():检查事务是否提交;
~~Query接口和Criteria接口:负责执行各种数据库查询;
- Hibernate(一)---Hibernate简介
- Hibernate七部曲(一)简介
- hibernate 一 简介
- 一:Hibernate简介
- Hibernate 一 JDBC简介
- Hibernate入门篇(一)——Hibernate简介
- hibernate注解之简介(一)
- Hibernate(一)——简介
- Hibernate (一)hibernate入门
- 【Hibernate】初学Hibernate(一)
- 【Hibernate】Hibernate系列(一)
- Hibernate(一):Hibernate基本原理
- Hibernate(一):了解Hibernate
- hibernate简介(转)
- Hibernate从入门到精通(一)JDBC简介
- Hibernate从入门到精通(一)JDBC简介 .
- Hibernate从入门到精通(一)JDBC简介
- Hibernate探索之路(一)——简介
- 【勤哲应用】用勤哲Excel服务器做变压器行业ERP管理系统
- Json是什么?
- 第十三周项目一(3)——验证二叉排序树相关算法
- 黑马程序员:毕向东java视频之面向对象篇一(三大特性)
- ubuntu系统访问win10磁盘,出现错误
- Hibernate(一)---Hibernate简介
- 第10周项目1(2)-由顺序存储结构转为二叉链存储结构
- 发送手机验证码--创蓝
- 稳压电源连载说明。
- C#中委托回调学习
- C++根据变量动态创建二维数组
- Git的两种安装与使用
- 2017年第2届包装世界(上海)博览会会刊(参展商名录)
- 数据结构上机实践第14周项目3