mybatis与hibernate的区别,详细点
6个回答
2012-10-30
展开全部
mybatis的主要思想是sql Mapping,而hibernate是OR Mapping,mybatis应用到项目中会比较直观一点,能直接看到sql,而hibernate是通过操作对象操作数据,可以很灵活的运用于不同的数据库之间。个人感觉mybatis用着更灵活
展开全部
1.开发速度
MyBatis支持的学习相比Hibernate更简单,支持原生sql,学习更简单。Hibernate的学习难度更大。开发速度差距不大。MyBatis要维护dao层数据库字段和bean属性映射,Hibernate要在bean中添加字段映射。
2.运行效率
MyBatis支持原生sql自定义查询字段更加灵活,基本属于JDBC操作。hibernate是对JDBC更复杂的封装。每次查询需要完整的映射,对待复杂的查询通过HQL语句生成的sql语句效率不能保证。所以MyBatis会比Hi稍快。
拓展资料:
相同点:他们都是市面上流行的ORM框架。他们均是通过xml配置生成sessionFactory然后通过sessionFactory生成session执行sql和管理事务。他们都支持JDBC和事务管理。
MyBatis支持的学习相比Hibernate更简单,支持原生sql,学习更简单。Hibernate的学习难度更大。开发速度差距不大。MyBatis要维护dao层数据库字段和bean属性映射,Hibernate要在bean中添加字段映射。
2.运行效率
MyBatis支持原生sql自定义查询字段更加灵活,基本属于JDBC操作。hibernate是对JDBC更复杂的封装。每次查询需要完整的映射,对待复杂的查询通过HQL语句生成的sql语句效率不能保证。所以MyBatis会比Hi稍快。
拓展资料:
相同点:他们都是市面上流行的ORM框架。他们均是通过xml配置生成sessionFactory然后通过sessionFactory生成session执行sql和管理事务。他们都支持JDBC和事务管理。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mybatis是半自动的,hibernate是全自动的,就是说mybatis可以配置sql语句,对于sql调优来说是比较好的,hibernate会自动生成所有的sql语句,调优不方便,hibernate用起来难度要大于mybatis
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
mybatis是把sql语句与java代码分离了...sql语句在xml文件配置的...
hibernate是ORM框架,它对jdbc进行了封装,在分层结构中处于持久化层,
它能建立面向对象的域模型和关系数据模型之间的映射.
它大大简化了dao层的编码工作
hibernate是ORM框架,它对jdbc进行了封装,在分层结构中处于持久化层,
它能建立面向对象的域模型和关系数据模型之间的映射.
它大大简化了dao层的编码工作
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
难易度
Hibernate的真正掌握要比Mybatis困难,Hibernate比mybatis更加重量级一些。
Mybatis框架相对简单很容易上手,但也相对简陋些。
开发工作量
Mybatis需要我们手动编写SQL语句,回归最原始的方式,所以可以按需求指定查询的字段,提高程序的查询效率。
Hibernate也可以自己写SQL语句来指定需要查询的字段,但这样破坏了Hibernate封装以及简洁性。
数据库移植性
Mybatis由于所有SQL都是依赖数据库书写的,所以扩展性,迁移性比较差。
Hibernate与数据库具体的关联都在XML中,所以HQL对具体是用什么数据库并不是很关心。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询