MyBatis-Plus 简介

既然名字叫MyBatis-Plus,那么就知道他应该有一个MyBatis,因为Plus不就是增强版的意思嘛,那就让我们来看看Mybatis是何方神圣

MyBatis:

MyBatis 源于 Apache 的一个开源项目 iBatis,而 iBatis 一词则来源于“internet”和“abatis”的组合,2010年这个项目由 Apache Software Foundation 迁移到了 Google Code,并且改名为MyBatis ,2013年11月其又迁移到 Github。MyBatis 是一个基于 Java 的支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架,相比于基于面向对象使用 HQL 语言的 Hibernate 框架,MyBatis 则基于 SQL 面向结果集,因此其效率更高。

来看看 MyBatis和JPA(Java持久层API)的对比

MyBatis vs JPA

MyBatis优势:
1. SQL语句可以只有控制,更灵活,性能较高,
2. SQL与代码分离,易于阅读和维护
3. 提供XML标签,支持编写动态SQL语句
JPA优势:
1. JPA移植性比较好(JPQL)
2. 提供了很多CRUD方法、开发效率高
3. 对象化程度更好
MyBatis劣势:
1. 简单的CRUD操作还得写SQL语句
2. XML中有很多的SQL要维护
3. MyBatis自身功能很有限,但是支持plugin

所以大家就在想有没有一个工具能解决一下mybatis的劣势呢?这时候就出现了MyBatis-Plus

Mybatis和Mybatis Plus的关系
 1. Mybatis-Plus是一个Mybatis的增强工具,它在Mybatis的基础上做了增强。只做增强不做改变
 2. mybatis-plus相比mybatis封装了基本的CRUD操作,内置了防SQL注入操作、常用的分页插件等等

MyBatis Plus的框架结构

MyBatis Plus的框架结构
Mybatis Plus特性
1. 无侵入、损耗少、强大的CRUD操作
2. 支持LamBda形式调用,支持多种数据库
3. 支持主键自动生成、支持ActiveRecord模式
4. 支持自定义全局通用操作、支持关键词自动转义
5. 内置代码生成器、内置分页插件、内置性能分析插件
6. 内置全局拦截插件、内置Sql注入剥离器

你可能感兴趣的:(MyBatis-Plus 简介)