hibernate理解
一、hibernate是对JDBC的进一步封装
原来没有使用hibernate做持久层开发时。存在很多冗余,如:各种JDBC语句,connection的管理,所以出现了hibernate把JDBC封装了一下,这样不用操作数据,直接操作它就行了。
二、分层角度
典型的三层架构:表示层、业务层、持久层。hibernate是持久层框架,不过持久层框架还有很多,比如:ibatis、EJB、OJB等。
三、hibernate核心
hibernate是一个开源的ORM(对象关系映射)框架。ORM即object-relation mapping,它的作用就是在关系型数据库和对象之间做了一个映射,从对象映射到关系,在从关系映射到对象。这样我们在操作数据库的时候,不需要再去和复杂的sql打交道,只要想操作对象一样的操作它就可以了(把关系型数据库的字段在内存中映射成对象的属性)。
核心:

图中可看出hibernate有六大核心接口。两个主要配置文件,以及他们直接的关系,简单认识
1、Configuration接口:负责配置并启动hibernate
2、SessionFactory接口:负责初始化hibernate
3、Session接口:负责持久化对象的CURD操作
4、Transaction接口:负责事务
5、Query和Criteria接口:负责执行各种数据库查询
注意“Configuration实例是启动期间的对象,一旦Session Factory创建完成它就被丢弃了
优点:
1、更加对象化。以对象的思维操作数据库,只需要操作对象就可以了,开发更加对象化
2、移植性。hibernate做了持久层的封装,你就不知道数据库,你写的所有的代码都具有可复用性
3、hibernate是一个没有侵入性的框架,没有侵入性的框架称为轻量级框架。对比struts的Action和ActionForm,都是需要继承,离不开struts,hibernate不需要继承任何类,不需要实现任何借口,这样的对象叫:POJO对象。
4、hibernate测试方便,提高效率和生产力
缺点:
1、使用数据库特性的语句,将很难调优
2、对大批量数据更新存在问题
3、系统中存在大量的攻击查询功能
浙公网安备 33010602011771号