Mybatis Plus
Mybatis-Plus是一个Mybatis的增强工具,只是在Mybatis的基础上做了增强却不做改变,MyBatis-Plus支持所有Mybatis原生的特性,所以引入Mybatis-Plus不会对现有的Mybatis构架产生任何影响。
Mybatis 和 Mybatis Plus 的区别
MyBatis:
所有SQL语句全部自己写
手动解析实体关系映射转换为MyBatis内部对象注入容器
不支持Lambda形式调用
Mybatis Plus:
强大的条件构造器,满足各类使用需求
内置的Mapper,通用的Service,少量配置即可实现单表大部分CRUD操作
支持Lambda形式调用
提供了基本的CRUD功能,连SQL语句都不需要编写
自动解析实体关系映射转换为MyBatis内部对象注入容器
MyBatis的优缺点
优点
MyBatis封装了JBDC底层访问数据库的细节,使我们程序猿不需要与JDBC API打交道,就可以访问数据库
MyBatis简单易学,程序猿直接编写SQL语句,适合于对SQL语句性能要求比较高的项目
SQL语句封装在配置文件中,便于统一管理与维护,降低了程序的耦合度
SQL代码从程序代码中彻底分离出来,可重用
提供了动态SQL标签,支持编写动态SQL
提供映射标签,支持对象与数据库的ORM字段关系映射
缺点
过于依赖数据库SQL语句,导致数据库移植性差,更换数据库,如果SQL语句有差异,SQL语句工作量大
由于xml里标签id必须唯一,导致DAO中方法不支持方法重载
MyBatis-Plus 优点
依赖少:仅仅依赖 Mybatis 以及 Mybatis-Spring 。
损耗小:启动即会自动注入基本 CURD,性能基本无