Hibernate理解
概述:
对于它的现实是通过一个复杂映射文件的定义描述OR关系,然后通过Hibernate容器去转换OR模型。
特性:
(1)连接池的方式,优化,数据库链接获取。
(2)在容器里建立一级、二级缓存对象,以至于起到优化数据抓取的效率。
(3)它在事务支持上,JTA,数据库,hibernate级别的事务。
(4)扩展、可插拔上设计很优秀:
<1>连接池Provider
<2>缓存Provider
<3>事务Provider
<4>事件监听(sava,delete,update...)
...
优缺点&适用环境
由于Hibernate是纯ORM框架,所以几乎支持所有的关系模型<->对象模型,特别是对于产品的开发/维护有不错的优势
(T-SQL语句的可读性与维护性相比较);它本身对数据库有广泛的支持,对于相同处理可以真正实现跨数据库;它本身容器
的一、二级缓存,对于少量数据的并发处理效率更是会有大大体现;它自身支持多种事务方式;而且在设计上很多核心功能
都是可插拔,可扩展;总体来说Hibernate是一个优秀的框架。但是它设计的很多复杂功能,在某些环境下却不太适应;
如对于那些Query的语句比复杂的(如统计、分析类)系统,以及那些处理数据量比较大,而且性能要求比较高的系统都不太适合。
Hibernate是一个纯Object Relation Mapping(ORM)框架,它基本支持所有对象模型与关系模型的转换。
而且它还支持,继承、级联等复杂模型的转换。
实现:对于它的现实是通过一个复杂映射文件的定义描述OR关系,然后通过Hibernate容器去转换OR模型。
特性:
(1)连接池的方式,优化,数据库链接获取。
(2)在容器里建立一级、二级缓存对象,以至于起到优化数据抓取的效率。
(3)它在事务支持上,JTA,数据库,hibernate级别的事务。
(4)扩展、可插拔上设计很优秀:
<1>连接池Provider
<2>缓存Provider
<3>事务Provider
<4>事件监听(sava,delete,update...)
...
优缺点&适用环境
由于Hibernate是纯ORM框架,所以几乎支持所有的关系模型<->对象模型,特别是对于产品的开发/维护有不错的优势
(T-SQL语句的可读性与维护性相比较);它本身对数据库有广泛的支持,对于相同处理可以真正实现跨数据库;它本身容器
的一、二级缓存,对于少量数据的并发处理效率更是会有大大体现;它自身支持多种事务方式;而且在设计上很多核心功能
都是可插拔,可扩展;总体来说Hibernate是一个优秀的框架。但是它设计的很多复杂功能,在某些环境下却不太适应;
如对于那些Query的语句比复杂的(如统计、分析类)系统,以及那些处理数据量比较大,而且性能要求比较高的系统都不太适合。
posted on 2010-04-05 19:15 john.huang 阅读(1981) 评论(0) 编辑 收藏 举报