MybatisPlus入门

在后台系统服务的开发过程中,必然要和数据库进行交互,在本套课程中,ORM这一层的技术选型,我们采用Mybatis框架作为持久层框架,原因是Mybatis对SQL语句编写更加的灵活。

为了提升开发的效率,所以选用MybatisPlus作为mybatis的插件,以提升开发的效率。下面我们来学习下MybatisPlus插件的使用。

简介

MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

我们的愿景是成为 MyBatis 最好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。

特性

无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
支持多种数据库:支持 MySQL、MariaDB、Oracle、DB2、H2、HSQL、SQLite、Postgre、SQLServer2005、SQLServer 等多种数据库
支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题
支持 XML 热加载:Mapper 对应的 XML 支持热加载,对于简单的 CRUD 操作,甚至可以无 XML 启动
支持 ActiveRecord 模式:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作
支持自定义全局通用操作:支持全局通用方法注入( Write once, use anywhere ) 
支持关键词自动转义:支持数据库关键词(order、key......)自动转义,还可自定义关键词
内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用
内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通List 查询

MybatisPlus入门之介绍相关推荐

  1. Java微服务+分布式+全栈项目(一)---->项目介绍+MyBatis-Plus入门

    这里写目录标题 项目概述 项目模块介绍 管理员系统: 用户系统: 技术架构 后端技术 前端技术 其他 MyBatis-Plus 入门 引入依赖 Mapper文件继承BaseMapper 使用 其他相关 ...

  2. 【基础框架-SSM】MyBatisPlus入门

    MyBatisPlus 文章目录 MyBatisPlus 一.MyBatisPlus入门案例与简介 1.1 入门案例 步骤1:创建数据库及表 步骤2:创建SpringBoot工程 步骤3:勾选配置使用 ...

  3. Mybatis-Plus入门案例以及使用方法

    文章目录 Mybatis-Plus简介 特性 支持的数据库 框架结构 入门案例 开发环境 创建数据库和表 创建maven工程 引入依赖 创建实体类User 创建mapper接口和映射文件 mapper ...

  4. MybatisPlus入门教程

    目录 一.MyBatis-Plus入门 1.简介 2.创建并初始化数据库 2.1创建数据库 2.2创建 User 表 3.确认idea配置 3.1 打开配置 3.2 Java编译器 3.3 项目和文件 ...

  5. java开发和基于asp.net开发有什么优越性?_java语言的入门开始介绍

    java编程语言是目前世界最流行的编程语言,它是在c++的基础上开发出来的语言,它取其精华去其糟粕让java语言具有功能强大和简单易用的特征. java具有:面对对象.分布式.健壮性.安全性.平台独立 ...

  6. FPGA入门基础介绍

    1.1 FPGA入门基础介绍 1.1.1 本节目录 1)本节目录: 2)本节引言: 3)FPGA简介: 4)FPGA入门基础介绍: 5)结束语. 1.1.2 本节引言 "不积跬步,无以至千里 ...

  7. EasyX入门和介绍

    //EasyX入门和介绍 //画实心圆 #include <graphics.h> //引用EasyX图形库 #include <conio.h> int main() {in ...

  8. 【无标题】C#nbsp;语言入门基础介绍学习通http://www.bdgxy.com/

    文章来源: 学习通http://www.bdgxy.com/ 普学网http://www.boxinghulanban.cn/ 智学网http://www.jaxp.net/ 表格制作excel教程h ...

  9. 第一章 51单片机开发入门知识介绍

    第一章 单片机开发入门知识介绍 1.1 51单片机介绍 51单片机是对所有兼容Intel 8031指令系统的单片机的统称. 该系列单片机的始祖是Intel的8004单片机,后来随着Flash rom技 ...

最新文章

  1. wxWidgets:wxTopLevelWindow类用法
  2. 阿里云IoT戴高:IoT场景化的本质是打造数智空间
  3. 【Darknet-Yolov3】Ubuntu 服务器上无权限出现 ./darknet: error while loading shared libraries: libcudart.so.8.0
  4. IEC 6-1131/3的5种标准编程语言
  5. 前端学习(3339):ant design中加上icon图标
  6. 《从问题到程序:用Python学编程和计算》——2.6 简单脚本程序
  7. js+css淡入效果
  8. 努力≠上进!那些持续精进的人有多可怕?
  9. 18. RSS订阅(RSS Feeds)and price rule
  10. Confluence 6 workbox 的位置
  11. Angr安装与使用之使用篇(四)
  12. C语言k近邻算法及例题,K近邻算法的理解及KD树的构建
  13. 如何用邮编查询API快速开发
  14. 解决谷歌浏览器flash插件已被屏蔽
  15. autocad ios 虚线_在CAD中怎么画出虚线?CAD画虚线方法介绍
  16. Android自定义九宫格图案解锁
  17. GitHub如何征服了Google、微软及一切
  18. 键盘记录工具(支持中文)
  19. 杂篇-01-Unity中创建Mesh时遇到的问题
  20. 一. 卡尔曼滤波器开发实践之一: 五大公式详解

热门文章

  1. 高级T-SQL第1级的阶梯:使用交叉连接来引入高级T-SQL
  2. @Html.Action()
  3. LeetCode77:Combinations
  4. js特效代码-鼠标样式
  5. 从决策树学习谈到贝叶斯分类算法
  6. Python 进阶之路 (八) 最用心的推导式详解 (附简单实战及源码)
  7. 聊聊flink Table的ScalarFunction
  8. Netflix如何使用机器学习来提升流媒体质量?
  9. Python基础学习四 函数
  10. ocp 043 第十三章:管理资源