- Hibernate框架
Hibernate框架简化了java应用程序与数据库交互的开发。Hibernate是一个开源,轻量级的ORM(对象关系映射)工具。
ORM工具简化了数据创建,数据处理和数据访问。它是将对象映射到数据库中存储的数据(表)的编程技术。 - Hibernate框架的优点
Hibernate框架的有点有很多,有几点如下:
- 开源和轻量级
Hibernate框架是根据LGPL许可证和轻量级的开源工具。 - 快速性能
Hibernate框架的性能很快,因为缓存在Hibernate框架内部使用。 hibernate框架中有两种类型的缓存:一级缓存和二级缓存。一级缓存默认是启用的。 - 数据库独立查询
HQL(Hibernate查询语言)是面向对象的SQL版本。 它生成数据库独立查询。 所以并不需要编写数据库特定的查询语句。不适用Hibernate,如果项目更改了数据库,需要更改SQL查询,从而导致维护变得非常复杂。 - 自动创建表
Hibernate框架提供了自动创建数据库表的功能。 - 简化复杂连接
Hibernate框架中可轻松获取多个表中的数据。 - 提供查询统计和数据库状态
Hibernate支持查询缓存,并提供有关查询和数据库状态的统计信息。
- Hibernate的体系结构
Hibernate架构包括许多对象持久对象,会话工厂,事务工厂,连接工厂,会话,事务等。
其架构中有4层Java应用层,Hibernate框架层,api层。而在Hibernate框架层需要使用映射文件与配置文件来进行指定(hibernate.cfg.xml)。
Hibernate框架使用许多对象会话工厂,会话,事务等以及现有的Java API,如JDBC(Java数据库连接),JTA(Java事务API)和JNDI(Java命名目录接口)。 - Hibernate体系结构的要素
要创建第一个hibernate应用程序,必须知道Hibernate架构的元素,这些元素包括:
- 会话工厂(SessionFactory)
SessionFactory是ConnectionProvider的会话和客户端工厂。 它拥有数据的二级缓存(可选)。 org.hibernate.SessionFactory接口提供了工厂方法来获取Session的对象。 - 会话(Session)
Session对象提供应用程序和存储在数据库中的数据之间的接口。它是一个短生命周期的对象并包装JDBC连接。它是事务,查询和标准的工厂。它拥有一级缓存(强制性)数据。org.hibernate.Session接口提供插入,更新和删除对象的方法。 它还提供了事务,查询和标准的工厂方法。 - 事务(Transaction)
事务对象指定工作的原子单位,它是一个可选项。 org.hibernate.Transaction接口提供事务管理的方法。 - 连接提供者(ConnectionProvider)
它是一个JDBC连接工厂,从DriverManager或DataSource抽象出来的应用程序,是一个可选项。 - 事务工厂(TransactionFactory)
它是一个事务工厂,而且是一个可选项。