首页 > 代码库 > Hibernate框架总结
Hibernate框架总结
1. Hibernate 简介
Hibernate 是一个开源框架,与 Struts 这种 MVC(Model-View-Controller) 框架不同的是,Hibernate 是一种 ORM(Object-Relational Mapping对象关系映射) 框架。
2. ORM 对象关系映射
ORM 意为对象关系映射。 Hibernate 会在 Java 对象和关系数据库之间建立某种映射,以达到存取 Java 对象的目的,是实现持久化存储(将内存中的数据存储在关系型的数据库、磁盘文件、XML数据文件中等等)的一种解决方案。
3. Hibernate 用途
Hibernate 不仅管理 Java 类到数据库表的映射(包括从 Java 数据类型到 SQL 数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用 SQL 和 JDBC 处理数据的时间。这正是它的设计目标,即将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。
4. Hibernate 优点
-
Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性,通过在与实体类的同一个包下建立配置文件来反映实体和数据库表的映射关系。
-
Hibernate 的性能好,因为它是个轻量级框架。映射的灵活性很出色。
-
它支持各种关系数据库,从 一对一 到 多对多 的各种复杂关系, 简化JDBC的编程。
5.Hibernate的核心接口
1. SessionFactory
对于单个数据库映射关系经过编译后的内存缓存,它是线程安全
且不可变的。它在进程或集群的级别上,为那些在事务之前可重复使用的数据提供了选择性的二级缓存。
2. Session
提供应用程序和持久化存储介质之间的一个单线程的会话对象,此对象生存期很短,是非线程安全
的。对于应用的持久化对象及其集合,它提供了一个一级缓存;当遍历导航对象图或者根据持久化标识查找对象时,会用到这个一级缓存。
3. Transaction
它是应用程序用来指定原子操作单元范围的对象,是一个单线程的、短生存周期的对象。它使用抽象把应用从底层的 JDBC、JTA 以及 CORBA 事务中隔离开。
Hibernate框架总结