Hibernate的优缺点:

1.Hibernate的优缺点:
优点:1、程序更加面向对象;
2、提高了生产率;
3、方便移植(修改配置文件);
4、无侵入性。
缺点:
1、效率比JDBC略差;
2、不适合批量操作。

总的来说,hibernate的缺点主要有以下几点:
一、由于对持久层封装过于完整,导致开发人员无法对SQL进行优化,无法灵活使用JDBC的原生SQL,Hibernate封装了JDBC,所以没有JDBC直接访问数据库效率高。要使用数据库的特定优化机制的时候,不适合用Hibernate 
二、框架中使用ORM原则,导致配置过于复杂,一旦遇到大型项目,比如300张表以上,配置文件和内容是非常庞大的,另外,DTO满天飞,性能和维护问题随之而来
三、如果项目中各个表中关系复杂,表之间的关系很多,在很多地方把lazy都设置false,会导致数据查询和加载很慢,尤其是级联查询的时候。
四、Hibernate在批量数据处理时有弱势,对于批量的修改,删除,不适合用Hibernate,这也是ORM框架的弱点

时间: 2024-10-13 03:10:48

Hibernate的优缺点:的相关文章

Hibernate的优缺点总结

在这里整理一下Hibernate的优缺点,有不完整的地方希望大家指出.谢谢! 先说一下Hibernate的优点: 一.Hibernate优点: 1.对象化.hibernate可以让开发人员以面相对象的思想来操作数据库.jdbc只能通过SQL语句将元数据传送给数据库,进行数据操作.而hibernate可以在底层对元数据和对象进行转化,使得开发者只用面向对象的方式来存取数据即可. 2.更好的移植性.hibernate使用xml或JPA的配置以及数据库方言等等的机制,使得hibernate具有更好的移

jdbc与hibernate的优缺点比较

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

springMVC 与 struts+hibernate+spring优缺点

springMVC: Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术.Velocity.Tiles.iText 和POI.Spring MVC 框架并不知道使用的视图,所以你可以自主的选择视图.Spring MVC 分离了控制器.模型对象.分派器以及处理程序对象的角色,这种分离让它们更容易进行定制.系统框架 springmvc mybatis Bootstrap html5 shiro maven SSM下载地址 struts+spr

使用Hibernate的优缺点

昨天在应聘时被hr问到hibernate有什么优缺点?现在试着总结如下,请大家给予补充,修正! 优点: 1.对象/关系数据库映射(ORM) 2.代码简单,不需要编写的SQL语句(不需要编辑JDBC),只需要操作相应的对象就可以了,就可以能够存储.更新.删除.加载对象,可以提高生产效: 3.移植性好(只要使用Hibernate标准开发,更换数据库时,只需要配置相应的配置文件就可以了,不需要做其它任务的操作): 4.Hibernate实现了透明持久化:当保存一个对象时,这个对象不需要继承Hibern

Hibernate的优缺点

Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库. Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序实用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任. 优点: a. Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性. b.H

JPA与Hibernate的优缺点

Java Persistence API 从 EJB 技术可以开始应用时起,对其在实际应用中的可用性就一直存在怀疑.在我看来,产生这种现象最重要的两个原因是复杂性和资源密集性.结果,随后出现了比 EJB 更简单.具有更小资源空间的框架(比如 Spring 和 Hibernate),并且更快流行开来.为了说明这一点,我们注意到 EJB 3.0 规范的方向相对以前出现了一个主要的转变.作为 JSR 220 的一部分,该规范提供了类似 Plain Old Java Object (POJO) 支持.D

MyBatis和Hibernate的优缺点对比

Hibernate的优点: 1.hibernate是全自动,hibernate完全可以通过对象关系模型实现对数据库的操作,拥有完整的JavaBean对象与数据库的映射结构来自动生成sql. 2.功能强大,数据库无关性好,O/R映射能力强,需要写的代码很少,开发速度很快. 3.有更好的二级缓存机制,可以使用第三方缓存. 4.数据库移植性良好. 5.hibernate拥有完整的日志系统,hibernate日志系统非常健全,涉及广泛,包括sql记录.关系异常.优化警告.缓存提示.脏数据警告等 Hibe

jdbc,mybatis,hibernate各自优缺点及区别

JDBC: 我们平时使用jdbc进行编程,大致需要下面几个步骤: 1,使用jdbc编程需要连接数据库,注册驱动和数据库信息 2,操作Connection,打开Statement对象 3,通过Statement对象执行SQL,返回结果到ResultSet对象 4,使用ResultSet读取数据,然后通过代码转化为具体的POJO对象 5,关闭数据库相关的资源 jdbc的缺点: 一:工作量比较大,需要连接,然后处理jdbc底层事务,处理数据类型,还需要操作Connection,Statement对象和

Mybatis和hibernate的优缺点比较

介绍: Hibernate :Hibernate 是当前最流行的ORM框架,对数据库结构提供了较为完整的封装. Mybatis:Mybatis同样也是非常流行的ORM框架,主要着力点在于POJO 与SQL之间的映射关系. 具体从几个方面说一下两者的区别: 1.两者最大的区别: 针对简单逻辑,Hibernate和MyBatis都有相应的代码生成工具,可以生成简单基本的DAO层方法. 针对高级查询,Mybatis需要手动编写SQL语句,以及ResultMap.而Hibernate有良好的映射机制,开