MyBatis与Hibernate区别

原创
2016/07/11 22:06
阅读数 382

1、Hibernate与MyBatis简介

Hibernate是面向对象(POJO)的,其实现了POJO与数据库表之间的映射以及SQL 的自动生成和执行。

MyBatis是面向SQL的,主要实现POJO 与SQL之间的映射关系。

2、区别:

MyBatis面向SQL,可以对SQL进行细致的优化,提高数据库操作的效率,而且可以指定查询部分字段;Hibernate虽然减少开发时操作数据库

的细节,简化开发人员的开发过程,使开发人员更专注业务逻辑,但是Hibernate对于将为复杂的表关系,将会变得很复杂,而且各种级联的

关系很容易降低性能,要想解决问题,必须对Hibernate的实现细节有较强的认识。

3、项目开发过程中使用两者时遇到的问题

开发同时具有PC端、移动端的服务端接口时,使用Hibernate遇到比较棘手的问题就是,之前我们对对象懒加载的配置虽然在PC端可以完成,但是由于移动端调用服务端接口,一般采用JSON或者XML,无法实现懒加载,不得不在业务层对对象进行另外一次的转换,将级联的对象进行转换;而在使用MyBatis时则不会存在该问题。

展开阅读全文
加载中
点击引领话题📣 发布并加入讨论🔥
0 评论
5 收藏
0
分享
返回顶部
顶部