- Hibernate是一个开放源码的ORM(Object Relational Mapping,对象关系映射)框架
- ORM框架是面向对象编程语言和关系型数据库之间的桥梁
- Hibernate框架是企业JavaEE应用中持久层的解决方案,是一个面向对象/关系数据库映射工具,用来将对象模型映射到基于SQL的关系模型数据结构中
- Hibernate中PO非常简单,采用低侵入设计,完全使用POJO(Plain Old Java Object,普通传统的Java对象)作为持久化对象
- Hibernate配置文件可以是hibernate.properties或hibernate.cfg.xml这两个配置文件人选其一,或两者结合使用
- 每个配置文件对应一个Configuration对象,代表一个应用程序到数据库的映射配置
- Configuration对象提供一个buildSessionFactory()方法,该方法可以创建一个SessionFactory对象
- 持久化对象的生命周期、事务管理、对象查询、更新和删除都是通过Session对象完成
- HQL(Hibernate Query Language)是完全面向对象查询语言,做操作的对象是类、实例、属性等
优点
- Hibernate具有的优点是:开源、免费、便于研究源代码,或修改源代码进行功能定制;轻量级封装,避免引入过多复杂问题,易调试;具有可扩展性,API开放,根据研发需要可以自行扩展;性能稳定,具有保障
开发3中方式
- 自底向上从数据库表到持久类;采用手动或开发工具根据数据库中表的结构生成对应的映射文件和持久类
- 自顶向下从持久类到数据库表;先编写持久类,然后手动或采用工具编写映射文件,进而生成数据表结构
- 从中间出发向上与向下同时发展;先编写映射文件,然后根据映射文件向上生成持久类,向下生成数据表结构