Hibernate基础知识
来源:互联网 发布:万网域名续费退款 编辑:程序博客网 时间:2024/06/09 18:59
面向对象是Java编程语言的特点,但在数据库的编程中,操作对象为关系型数据库,并不能对实体对象直接持久化,Hibernate通过ORM技术解决了这一问题,在实体对象与数据库之间提供了一座桥梁。
1、ORM原理
ORM(Object Relational Mapping)是对象到关系的映射,是一种解决实体对象与关系型数据库相互匹配的技术,其实现思想是:将数据库宏总的数据表映射为对象,对关系型数据以对象的形式进行操作。在软件开发中,对象和关系数据是业务实体的两种表现形式,ORM通过使用描述对象和数据库之间映射的元数据,将对象自动持久化到关系数据库中。实质上,ORM在业务逻辑层与数据库层之间充当桥梁,它对对象(Object)到关系数据(Relational)进行映射(Mapping)。
在Hibernate框架中,主要使用了ORM的思想。Hibernate主要通过持久化类(*.java)、Hibernate映射文件(*.hbm.xml)或annotation方式、以及Hibernate配置文件(*.cfg.xml)与数据库进行交互。其中,持久化类是操作对象,用于描述数据表的结构;映射文件指定持久化类与数据表之间的映射关系;配置文件用于指定Hibernate的属性信息等,如数据库的连接信息等。
2、Hibernate常用的6个接口
(1)Configuration/AnnotationConfiguration接口
Configuration接口用于加载Hibernate配置文件及启动Hibernate,创建SessionFactory实例。在Hibernate的启动过程中,Configuration对象首先加载Hibernate的配置文件对其进行读取,然后根据配置创建SessionFactory对象。
(2)SessionFactory接口
SessionFactory接口用于对Hibernate进行初始化操作。它是一个Session工厂,Session对象从此接口获取。通常一个项目只有一个SessionFactory对象,因为它对应一个数据库;如果项目中存在多个数据库,可以创建多个SessionFactory对象。但要注意SessionFactory是一个重量级对象,其创建比较耗内存,占用资源,其是线程安全的。
(3)Session接口
Session接口是操作数据库的核心对象,它负责管理所有与持久化相关的操作,也称CRUD(增加Create、读取Retrieve、更新Update、删除Delete)操作。使用此对象时应注意,Session对象和SessionFactory对象不同, 它是非线程安全的,应避免多个线程共享一个Session,其创建不会耗费太多的资源。
(4)Transaction接口
Transaction接口用于对事务的相关操作,如数据的提交、回滚等操作。
(5)Query接口
Query接口主要用于对数据库的查询操作,其单检索、分页查询等诸多方法为程序开发提供方便。其中,面向对象查询语言HQL(Hibernate Query Language)通过此接口实现。
(6)Criteria接口
Criteria接口同样用于对数据库的查询操作,它为Hibernate的另一种查询方式QBC提供方法。
- Hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- hibernate基础知识
- Hibernate 基础知识
- Hibernate基础知识
- hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- Hibernate基础知识
- hibernate基础知识备份
- hibernate的基础知识
- hibernate基础知识整理
- 第三讲,我们来谈谈:“二进制的负数”
- AjaxFileUpload实现文件上传
- 斜率优化DP 【pascal】
- C++四种强制类型转换的总结
- Android开发必备的21个免费资源和工具
- Hibernate基础知识
- USACO Postal Vans 解题报告
- JAVA异常处理
- Android学习笔记1——android应用的原理
- Java笔记——2
- Activiti源码浅析:Activity与Task
- shell怎么读取网页内容
- FLUENT运行出错
- perl有什么模块可以添加DNS域名吗?