解析Hibernate之前首先需要要了解一下ORM技术
对象关系映射(英语:Object Relational Mapping,简称ORM)
白话的解释:对象模型(JavaBean)和关系模型(数据库表)映射起来的关系
Hibernate 是实现ORM技术流行框架
其中很多人会对它得实现机制比较困惑 搞不清EntityManager Session SessionFactory 的关系
JPA全称Java Persistence API 是SUN公司是为简化开发整合ORM技术而提出的规范(接口)
Hibernate 是实现实现此接口的一种的框架
其实Hibernate 开发了两套实现机制 1 Session SessionFactory Query
2 EntityManager EntityManagerFactory Query
其实第二种是对第一种的封装 目的 是为了实现JPA接口规范 便于框架的整合
一下通过简单介绍几个类 来进一步说明二套实现的关系
JPA接口主要提供四个接口
EntityManagerFactory(获得EntityManager)EntityManager(CRUD) Query(执行查询语句方法)
1 ApplicationContext 2
配置文件 实现(PersistenceProvider接口) 提供 EntityManagerFactory
(AnnoationApplication) HibernatePersistence
| |
| EntityManagerFactoryImpl
(提供session) 封装SessionFactory(实现EntityManagerFactory)
SessionFactory |
| 封装Session(实现EntityManager)
| EntityManagerImpl
|
Session CRUD操作类 HibernateQuery 实现Query接口
|
Query 没有实现Query