1、Configuration 类
Configuration 类负责管理 Hibernate 的配置信息,包括数据库的URL、用户名、密码、JDBC驱动类,数据库Dialect,数据库连接池等,其加载的是hibernate.cfg.xml配置文件。和持久化类与数据表的映射关系(*.hbm.xml 文件)
2、ServiceRegistry类
Hibernate4 新增了一个 ServiceRegistry 接口,所有基于 Hibernate 的配置或者服务都必须统一向这个 ServiceRegistry 注册后才能生效
3、SessionFactory类
针对单个数据库映射关系经过编译后的内存镜像,是线程安全的。
SessionFactory是生成Session的工厂
构造 SessionFactory 很消耗资源,一般情况下一个应用中只初始化一个 SessionFactory 对象。
4、Session类
Session是应用程序与数据库之间交互操作的一个单线程对象,是 Hibernate 运作的中心,所有持久化对象必须在 session 的管理下才可以进行持久化操作。此对象的生命周期很短。Session 对象有一个一级缓存,显式执行 flush 之前,所有的持久层操作的数据都缓存在 session 对象处。
Session 类的方法:
–取得持久化对象的方法: get() load(),区别?
–持久化对象都得保存,更新和删除:save(),update(),saveOrUpdate(),delete()
–开启事务: beginTransaction().
–管理 Session 的方法:isOpen(),flush(), clear(), evict(), close()等
5、Transaction(事务)
代表一次原子操作,它具有数据库事务的概念。所有持久层都应该在事务管理下进行,即使是只读操作
常用方法:
–commit():提交相关联的session实例
–rollback():撤销事务操作
–wasCommitted():检查事务是否提交