HIbernate简述
来源:互联网 发布:幼儿园网络信息 编辑:程序博客网 时间:2024/05/27 21:50
Hibernate是一个对象关系映射(ORM)框架,它对JDBC进行了非常轻量级的对象封装,使得可以使用对象编程思维来操纵数据库。看到这里应该了解到Hibernate也是一个持久层框架。
ORM的简单规则:
- 类跟表对应
- 类属性与表字段对应
- 类实例与表中具体一条记录对应
- 一个类可与多个表对应,一个表也可对应多个类
- DB中表与表之间的关系(如:外键)映射成为Object之间的关系
Hibernate主要通过5核心个接口来进行对象的持久化操作和事务控制:
- Configuration接口:主要对Hibernate进行配置、启动Hibernate并连接数据库系统,在启动HIbernate的过程中,Configuration实例首先确定HIbernate映射文件的位置,然后读取相关的配置,最后创建一个唯一的SessionFactory实例,这个唯一的SessionFactory实例负责进行所有的持久化操作。Configuration对象只存在系统的初始化阶段
- SessionFactory接口:主要负责HIbernate的初始化。它作为数据存储源的代理,负责建立Session对象。 具体来说,在HIbernate中SessionFactory实际起了一个缓冲区的作用,HIbernate自动生成的SQL语句、映射数据以及某些可重复利用的数据都可存放在这个缓冲区中。同时,它还保存了数据库配置的所有映射关系
- Session接口:Session接口是HIbernate中使用最为广泛的接口,也是持久化的核心。Session对象的生命周期以Transaction对象的事务开启和结束为边界。Session提供了一系列与持久化相关的操作,如读取、创建、和删除相关实体对象的的实例(即数据库中数据的增删改查),因此,Session也被称为持久化管理器
- Transaction接口:Transaction接口主要用于管理事务,是HIbernate的数据库事务接口,它对底层的事务接口进行了封装。
- Query接口:Query接口是HIbernate的查询接口,用于向数据库中查询对象,并控制执行查询的过程。在HIbernate中有三种检索方式,分别为HQL检索方式、QBC检索方式和SQL检索方式。传统的SQL查询语言是结构化的查询方式,这种方式并不适用于查询以对象形式存在的数据。
HIbernate的具体操作步骤:
public void init(){//创建配置对象Configuration config = new Configuration().configure();//创建服务注册对象ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();//创建会话工厂对象sessionFactory = config.buildSessionFactory(serviceRegistry);//创建会话对象session = sessionFactory.openSession();//开启事务transaction = session.beginTransaction();}
1. 创建一个配置对象(configuration对象 用来读取cfg.xml文件)
2. 利用配置对象创建的服务注册对象来创建会话工厂(在创建会话工厂的同时读取hbm.xml里的对象关系映射文件)
3. 在会话工厂了开启一个会话
4. 开启一个事物(seesion对象的方法必须要封装在事务当中,如果不开启在事务中,并且手工提交事务,对象并不会真正保存在数据库中)
5. 运行完方法后关闭事务,在关闭会话
阅读全文
0 0
- HIbernate简述
- 1. Hibernate简述
- Hibernate懒加载简述
- Hibernate缓存机制简述
- Hibernate事物管理简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate框架简述
- hibernate缓存机制简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate框架简述
- Hibernate-框架简述-1
- Hibernate框架简述
- Hibernate框架简述
- UVa10491
- leetcode---copy-list-with-random-pointer---链表
- 【Spring】Spring+hibernate整合
- 全球看齐!美国政府的14条人工智能政策准则【附下载】| 智东西内参
- 计划
- HIbernate简述
- Java为什么基本数据类型不需要进行创建对象?
- 亚马逊CEO成世界首富 惊呆!沙特授予机器人公民身份
- 读书 安卓群英传第5章节滑动详解
- 第一课 NIO
- report form
- Android 通知
- 数据库结果映射ResultMapping小工具EasyQuery
- LWC 56:443. String Compression