2019 年度最受欢迎中国开源软件​[1]​ 正在火热进行中,请为 ​Mybatis Plus​ 投上一票。


Mybatis Plus 简介

2019 年度最受欢迎中国开源软件,请支持 Mybatis Plus_数据库

MyBatis-Plus​[2]​(简称 MP)是一个 MyBatis​[3]​ 的增强工具,由苞米豆团队开源并维护,在 ​MyBatis​ 的基础上只做增强不做改变,为简化开发、提高效率而生。


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


特性

  • 无侵入​:只是对原生 Mybatis 进行了增强,而且完全兼容原生Mybatis
  • 损耗小​:启动便具有基本的 CURD,直接面向对象操作
  • 强大的 CRUD 操作​:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表的大部分操作,更有强大的条件Wrapper构造器,满足各类使用需求
  • 支持 Lambda 表达式​:Wrapper 支持 Lambda 表达式,写出更加优雅的构造条件。
  • 多种主键生成方式​:支持多达 4 种主键策略(支持雪花算法),可自由配置生成自定义主键,也可以自定义实现主键生成策略
  • 支持 ActiveRecord 模式​:支持 ActiveRecord 形式调用,实体类只需继承 Model 类即可进行强大的 CRUD 操作
  • 支持自定义全局通用操作​:支持全局通用方法注入
  • 内置代码生成器​:可通过编码配置代码生成器或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用
  • 内置分页插件​:基于 MyBatis 物理分页,无需关心具体操作,配置好插件之后,近乎无感知的分页操作。
  • 分页插件支持多种数据库​:支持常见的多种数据库,具体参见下表
  • 内置性能分析插件​:(开发功能)可输出 Sql 语句以及其执行时间,能快速揪出慢查询,为Sql优化提供参考依据。
  • 内置全局拦截插件​:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作
  • 支持多租户​:通过多租户插件可配置多租户下的CRUD场景

支持数据库

Mybatis Plus​ 支持常见的数据库。列表如下:

  • mysql 、 oracle 、mariadb 、 db2 、 postgresql 、 hsql 、 sqlite 、 h2 、 sqlserver

  • 达梦数据库 、 虚谷数据库 、 人大金仓数据库

框架结构

2019 年度最受欢迎中国开源软件,请支持 Mybatis Plus_github_02

framework

和 Tkmybatis 相比较

我用过 ​Tkmybatis​ 编写过一个项目,其查询功能确实比 ​Mybatis Plus​ 强大,但是有一种 ​开发一时爽,维护火葬场​ 的感觉。生成的代码阅读性不太友好。而 ​Mybatis Plus​ 不但不存在这个问题并且有更多实际场景需要的常见功能。你可以根据实际需要选择使用 ​Tkmybatis​ 和 ​Mybatis Plus

代码托管


Gitee​[4]​ | ​Github​[5]


参考资料

[1]

2019 年度最受欢迎中国开源软件: ​https://www.oschina.net/project/top_cn_2019?sort=1

[2]

MyBatis-Plus: ​https://github.com/baomidou/mybatis-plus

[3]

MyBatis: ​http://www.mybatis.org/mybatis-3/

[4]

Gitee: ​https://gitee.com/baomidou/mybatis-plus

[5]

Github: ​https://github.com/baomidou/mybatis-plus


2019 年度最受欢迎中国开源软件,请支持 Mybatis Plus_github_03