hibernate的优缺点

hibernate的优缺点

@sunRainAmazing

Hibernate的优缺点:

 优点:  1、程序更加面向对象; 
        2、提高了生产率; 
        3、方便移植(修改配置文件); 
        4、无侵入性。 
  缺点: 
        1、效率比JDBC略差; 
        2、不适合批量操作。 
(1)  Hibernate在批量数据处理时有弱势
(2) 针对单一对象简单的增删查改,适合于Hibernate,而对于批量的修改, 
        删除,不适合用Hibernate,这也是OR框架的弱点; 
        要使用数据库的特定优化机制的时候,不适合用Hibernate 

Hibernate有四种查询方案:


  1get,load方法,根据id查找对象 
  2、HQL--hibernate query language(查询对象:Query) 
  3、Criteria--标准查询语言(查询对象:Criteria,查询条件:Criterion) 
  4、通过sql来查(查询对象:SQLQuery) 

优缺点

优缺点
Hibernate是一个开放源代码的对象关系映射框架,
它对JDBC进行了非常轻量级的对象封装,
使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。



Hibernate可以应用在任何使用JDBC的场合,
既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,
最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,
完成数据持久化的重任。



大多数开发机构经常采取创建各自独立的数据持久层。
一旦底层的数据结构发生改变,那么修改应用的其余部分使之适应这种改变的代价将是十分巨大的。
 Hibernate适时的填补了这一空白,它为Java应用提供了一个易用的、高效率的对象关系映射框架。
 hibernate是个轻量级的持久性框架,功 能却非常丰富。 


优点:
a.Hibernate 使用 Java 反射机制而不是字节码增强程序来实现透明性。 

b.Hibernate 的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。 

c.它支持各种关系数据库,从一对一到多对多的各种复杂关系。 


一、Hibernate是JDBC的轻量级的对象封装,
它是一个独立的对象持久层框架,和App Server,和EJB没有什么必然的联系。
Hibernate可以用在任何JDBC可以使用的场合,
例如Java应用程序的数据库访问代码,DAO接口 的实现类,
甚至可以是BMP里面的访问数据库的代码。
从这个意义上来说,Hibernate和EB不是一个范畴的东西,
也不存在非此即彼的关系。 


二、Hibernate是一个和JDBC密切关联的框架,
所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,
但是和使用它的Java程序,和App Server没有任何关系,
也不存在兼容性问题。 



1、内存消耗:采用JDBC的架构2无疑是最省内存的, 
          Hibernate的架构3次之,EB的架构1最差。 

2、运行效率:如果JDBC的代码写的非常优化,那么JDBC架构运行效率最高, 
          但是实际项目中,这一点几乎做不到,这需要程序员非常精通JDBC, 
          运用 Batch语句,调整PreapredStatement的Batch Size和Fetch Size等参数, 
          以及在必要的情况下采用结果集cache等等。 
          而一般情况下程序员是做不到这一点的。 
          因此Hibernate架构表现出最快的运行效率。 
           EB的架构效率会差的很远。 

3、开发效率:在有JBuilder的支持下以及简单的项目, 
          EB架构开发效率最高,JDBC次之,Hibernate最差。 
          但是在大的项目,特别是持久层关系映射很复杂的情况下, 
          Hibernate效率高的惊人,JDBC次之,而EB架构很可能会失败。 

4、分布式,安全检查,集群,负载均衡的支持 



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值