Hibernate
由于换了新的工作,需要重新使用到Hibernate持久化框架,因此将Hibernate相关知识进行总结,并随笔记录,于是出现了本文。希望本文也能对刚接触Hibernate框架的你有一定的帮助。
Java持久化
持久化是将程序数据在持久状态和瞬时状态间转换的机制。
持久化(Persistence),即把数据(如内存中的对象)保存到可永久保存的存储设备中(如磁盘)。
持久化的主要应用是将内存中的对象存储在关系型的数据库中,当然也可以存储在磁盘文件中、XML数据文件中等等。
JDBC就是一种持久化机制。文件IO也是一种持久化机制。
常见的Java持久层框架有JPA、MaBatis、Hibernate、JDBC等等。
什么是Hibernate
Hibernate是一个DAO层的全自动ORM(对象关系映射)框架,它对JDBC进行了非常轻量级的对象封装,Hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
如何使用Hibernate
- 引入hibernate的jar包
- 写实体类XML:xxx.hbm.xml编辑映射关系
- 配置Hibernate环境:hibernate.cfg.xml
- 根据API写语句
Hibernate执行原理总结
- 读取并解析hibernate.cfg.xml配置文件
Configuration configuration = new Configuration.configure();
//可以手动添加映射文件
//configuration.addResource("com/xx/xxx.hbm.xml")
- 加载配置文件时,会从hibernate.cfg.xml中的<mappingresoure=“com/xx/xxx.hbm.xml”/>读取并解析映射信息
- 获取SessionFactory
SessionFactory sessionFactory = configuration.buildSessionFactory();
- 获取Session
Session session = sessionFactory.openSession();
- 手动开启事务
session.beginTransaction();
- 数据持久化操作persistent operate
- 提交事务
session.getTransaction().commit();
- 关闭Session
session.close();
- 关闭SessionFactory
sessionFactory.clouse();