Hibernate是什么?
用Java语言封装的开放源代码的对象关系映射框架,它对JDBC进行轻量级的对象封装,将POJO与数据表建立映射关系,全自动ORM框架,hibernate可以自动生成SQL语句,自动执行,完成数据持久化的重任。
注:解释概念中的两个词
1、POJO(plain ordinary Java object)简单的Java对象。只包含属性和getter以及setter方法,不包含任何涉及业务逻辑的处理。同时不具有任何角色和不继承以及不实现任何Java框架的类或接口。
2、持久化,类数据能够被存储到某个地方,下次需要通过类直接读取。
Hibernate的优点
1、开源和免费,方便有需求是研究源代码,改写源代码,进行功能定制
2、轻量级封装,避免引入过多复杂的问题,调试容易,减轻程序员负担
3、有可扩展性,API开放,便于自己进行扩展
4、开发者活跃,产品有稳定的发展质量保障。
为什么hibernate是持久化的?
这其中涉及到hibernate中对象的三种状态,顺带讲解一下三种状态的相互转化。看下图中hibernate的三种状体,瞬时,持久化,脱管。
在转换为持久化的过程中,先把对象存放到session中,之后调用session的save()或者saveOrUpdate()保存到数据库中。存放在session中的好处可以直接从内存中获取,不需要再到数据库中读取。
【总结】
其实小编接触hibernate也有一段时间了,使用的简便性,功能的强大性,不得不说厉害。有一点使用hibernate必须注意的是根据实体生成表,但是大部分情况下是数据库先行,所以在配置hibernate配置文件的时候需要多注意一下。