mybatis plus 与 mybatis generator 哪个更好

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mybatis plus 与 mybatis generator 哪个更好相关的知识,希望对你有一定的参考价值。

根本就不是同一类东西。如果Mybatis Plus是扳手,那Mybatis Generator就是生产扳手的工厂。
通俗来讲——
MyBatis:一种操作数据库的框架,提供一种Mapper类,支持让你用java代码进行增删改查的数据库操作,省去了每次都要手写sql语句的麻烦。但是!有一个前提,你得先在xml中写好sql语句,是不是很麻烦?于是有下面的↓
Mybatis Generator:自动为Mybatis生成简单的增删改查sql语句的工具,省去一大票时间,两者配合使用,开发速度快到飞起。至于标题说的↓
Mybatis Plus:国人团队苞米豆在Mybatis的基础上开发的框架,在Mybatis基础上扩展了许多功能,荣获了2018最受欢迎国产开源软件第5名,当然也有配套的↓
Mybatis Plus Generator:同样为苞米豆开发,比Mybatis Generator更加强大,支持功能更多,自动生成Entity、Mapper、Service、Controller等
总结:
数据库框架:Mybatis Plus > Mybatis
代码生成器:Mybatis Plus Generator > Mybatis Generator
(以上均为个人观点,不代表客观事实)
参考技术A MybatisPlus 最好用的 mybatis 插件没有之一,自己去看看官方文档! 参考技术B 1.设置mapper文件重复生成时覆盖旧的文件
将GeneratedXmlFile中isMergeable设置为false,实现方式:修改IntrospectedTableMyBatis3Impl.getGeneratedXmlFiles方法构造xml文件时传入参数false。
GeneratedXmlFile gxf = new GeneratedXmlFile(document,
getMyBatis3XmlMapperFileName(), getMyBatis3XmlMapperPackage(),
context.getSqlMapGeneratorConfiguration().getTargetProject(),
false, context.getXmlFormatter());
2.oracle主键生成方式直接将sql写在generatedKey的statement中。

3.控制是否生成PrimaryKeyClass

IntrospectedTable中的rules属性(接口Rules)中有三个方法:generatePrimaryKeyClass()、generateBaseRecordClass()、generateRecordWithBLOBsClass()控制是否生成三种Model文件。
mybatis提供了三种ModelType: HIERARCHICAL("hierarchical")、FLAT("flat"),CONDITIONAL("conditional");对应三种modelRule:HierarchicalModelRules、FlatModelRules、ConditionalModelRules。
通过在mybatis generator配置文件增加属性defaultModelType=“hierarchical”可以控制不生成PrimarykeyClass。
这种配置会导致只包含联合主键的表不能生成Model,可以通过修改HierarchicalModelRules方法中的generateBaseRecordClass()改为返回true,则可生成对应Model。

Mybatis-Plus —— Mybatis 增强工具包 | 软件推介


Mybatis-Plus —— Mybatis 增强工具包 | 软件推介

Mybatis-Plus

授权协议:GPL

开发语言:Java

操作系统:跨平台

评分:8.4


简介


Mybatis-Plus 是 MyBatis 增强工具包,简化 CRUD 操作。启动加载 XML 配置时注入单表 SQL 操作 ,为简化开发工作、提高生产率而生。

Maven 坐标

http://search.maven.org/#search%7Cga%7C1%7Cmybatis-plus

Mybatis-Plus —— Mybatis 增强工具包 | 软件推介


与其他 Mybatis 工具包区别


优势一、 Mybatis-plus 启动注入非拦截实现、性能更优。

优势二、多种 ID 选择,类型 ID_WORKER ,  UUID 全局唯一、支持实现分库。

优势三、完全继承原生易理解、扩展使用,支持自定义表、字段、ID动态注解。
其他、等待您去发现!。。。。

集成后自动拥有如下 CRUD 方法:

Mybatis-Plus —— Mybatis 增强工具包 | 软件推介

功能


  • 1、单表 CURD (简单 + 批量)操作,自动完成(支持 like 比较等查询)。

  • 2、分页插件,Count 查询 自动 或 自定义 SQL 查询。

  • 3、Spring 根据不同环境加载不同配置支持(支持 typeAliasesPackage 通配符扫描)。

【自动生成 Entity  Mapper  Service 文件】


使用


查看源码 功能测试 及 Wiki文档

Mybatis-Plus —— Mybatis 增强工具包 | 软件推介

Mybatis-Plus —— Mybatis 增强工具包 | 软件推介


Mybatis-Plus —— Mybatis 增强工具包 | 软件推介


推荐阅读



开发团队必备的现代前端开发指南


点击“阅读原文”查看更多精彩内容

以上是关于mybatis plus 与 mybatis generator 哪个更好的主要内容,如果未能解决你的问题,请参考以下文章

mybatis plus条件拼接

Mybatis Plus 时间查询无效解决方法

Mybatis-Plus 条件构造器

25 mybatis-plus常用语法

mybatis plus 与 mybatis generator 哪个更好

90天Java---mybatis与mybatis plus-1