Hibernate核心知识(一)

Hibernate是一个ORM框架。要学习Hibernate,我们首先得要来了解一下什么是ORM。
ORM(Object Relational Mapping),又叫对象关系映射。
ORM通过对象关系映射机制来解决硬编码SQL问题、支持多数据库
这里写图片描述
不同的数据库有不同的方言 →ORM自定义一个语法 →根据方言配置,翻译为对应的SQL

hibernate通过session对象(不是http的session,数据库操作工具)来简化数据库操作

  • session对象提供一系列数据库操作功能
  • 开发人员无需处理数据库连接获取等问题

hibernate的性能优化方案:

  • 集成了数据库连接池(自己提供一个连接池,但是在生产环境下,建议使用第三方连接池,可以接入,譬如C3P0,因为他自带连接池性能很差、而且没有定期检查连接是否有效这些机制)
  • 提供对象池,也就是缓存,分为一级缓存、二级缓存
    Hibernate中的session对象除了提供数据库操作功能,还为“数据对象”提供对象池:一级缓存。
    假如一个事务中,创建一个session对象,在该事务过程中,通过session查询过的对象,在缓存中都会有保存,再次取出时,如果数据没有改变,就无需再次查询数据库。
    每个session对象都有自己独立的对象池(缓存)。
  • 通过一些代码生成工具,进一步解决工作量大的问题 譬如:MyEclipse
    Hibernate反向工程工具,设计好数据表后,可以自动生成对应的DTO、DAO、XML等。
    具体步骤可参考MyEclipse2014使用Hibernate逆向工程生成实体类

猜你喜欢

转载自blog.csdn.net/hhhhhsw/article/details/80474246