mybatis与hibernate区别

简介: mybatis与hibernate区别

Hibernate:hibernate是一个标准的ORM框架,不需要写sql语句,维护关系比较复杂,sql语句自动生成,对sql语句优化,修改比较困难。


Hibernate的优缺点:


优点:面向对象开发,不需要自己写sql语句。如果进行数据库迁移不需要修改sql语句,只需要修改一下方言。


缺点:hibernate维护数据表关系比较复杂。完全是有hibernate来管理数据表的关系,对于我们来说完全是透明的,不易维护。


Hibernate自动生成sql语句,生成sql语句比较复杂,比较难挑错。


Hibernate由于是面向对象开发,不能开发比较复杂的业务。


应用场景:


适合需求变化较少的项目,比如ERP,CRM等等


Mybatis框架对jdbc框架进行封装,屏蔽了jdbc的缺点,开发简单。


Mybatis只需要程序员关注sql本身,不需要过多的关注业务。对sql的优化,修改比较容易


适应场景:


适合需求变化多端的项目,比如:互联网项目



mybatis与hibernate重要区别

企业开发进行技术选型 ,考虑mybatis与hibernate适用场景。



mybatis:入门简单,程序容易上手开发,节省开发成本 。mybatis需要程序员自己编写sql语句,是一个不完全 的ORM框架,对sql修改和优化非常容易实现 。


mybatis适合开发需求变更频繁的系统,比如:互联网项目。



hibernate:入门门槛高,如果用hibernate写出高性能的程序不容易实现。hibernate不用写sql语句,是一个 ORM框架。


hibernate适合需求固定,对象数据模型稳定,中小型项目,比如:企业OA系统


相关文章
|
2月前
|
SQL Java 数据库连接
hibernate和mybatis的区别
hibernate和mybatis的区别
|
5天前
|
Java 数据库连接 mybatis
mybatis和mybatis-plus有哪些主要区别
这是一个代码生成工具,能快捷生成Mapper、Model、Service和Controller层代码,包含基本的CRUD操作。特色在于使用LambdaQueryWrapperX进行复杂查询条件构造,支持链式调用。此外,它还实现了MetaObjectHandler接口,能自动填充通用字段值,提高开发效率。
15 2
|
15天前
|
SQL XML Java
蓝易云 - ibatis与mybatis的区别
总的来说,MyBatis在功能性和易用性上都优于iBatis,是iBatis的改进版。
7 2
|
7天前
|
前端开发 Java 数据库连接
程序技术好文:电脑睡眠(sleep)和休眠(Hibernate)的区别,以及休眠功能的设置
程序技术好文:电脑睡眠(sleep)和休眠(Hibernate)的区别,以及休眠功能的设置
|
7天前
|
前端开发 Java 数据库连接
技术好文共享:电脑睡眠(sleep)和休眠(Hibernate)的区别,以及休眠功能的设置
技术好文共享:电脑睡眠(sleep)和休眠(Hibernate)的区别,以及休眠功能的设置
|
13天前
|
SQL Java 数据库连接
【MyBatis】MyBatis操作数据库(二):动态SQL、#{}与${}的区别
【MyBatis】MyBatis操作数据库(二):动态SQL、#{}与${}的区别
15 0
|
2月前
|
SQL 缓存 Java
|
2月前
|
SQL Java 数据库连接
Java从入门到精通:3.1.2深入学习Java EE技术——Hibernate与MyBatis等ORM框架的掌握
Java从入门到精通:3.1.2深入学习Java EE技术——Hibernate与MyBatis等ORM框架的掌握
|
2月前
|
SQL Java 数据库连接
MyBatis #与$的区别以及动态SQL
MyBatis #与$的区别以及动态SQL
20 0
|
2月前
|
Java 数据库连接 mybatis
MyBatis中Mapper接口和dao区别是什么?
MyBatis中Mapper接口和dao区别是什么?
100 0