tk-mybatis与mybatis-plus区别

原创
10/27 08:39
阅读数 15

1.基础CRUD BaseMapper

在这里插入图片描述
基本一样,只是方法名不一样,tk和MBG更贴切

2.代码生成器
Mybatis-Plus

通过 AutoGenerator 可以快速生成 Entity、Mapper、Mapper XML、Service、Controller 等各个模块的代码,极大的提升了开发效率。对原生的MBG进行了封装,更友好

Tk-Mybatis

代码生成器是基于 MBG 插件的,所以需要配合 MBG 使用。更贴近原生

3. 全局主键 Sequence主键
Mybatis-Plus

oracle等数据库主键策略配置Sequence
实体类配置主键Sequence,指定主键@TableId(type=IdType.INPUT)//不能使用AUTO
支持父类定义@KeySequence, 子类使用,这样就可以几个表共用一个Sequence
针对各种数据库的策略。

Tk-Mybatis

全局ID生成器 Vesta、UUID

两种策略是不太一样的。@KeySql(genId = UUIdGenId.class) ,Mapper 4.0.2

4. 热加载
Mybatis-Plus

3.0.6版本上移除了该功能,不过最新快照版已加回来并打上废弃标识,3.1.0版本上已完全移除
多数据源配置多个 MybatisMapperRefresh 启动 bean
默认情况下,eclipse保存会自动编译,idea需自己手动编译一次

/**
 * 切莫用于生产环境(后果自负)
 * <p>Mybatis 映射文件热加载(发生变动后自动重新加载).</p>
 * <p>方便开发时使用,不用每次修改xml文件后都要去重启应用.</p>
 *
 * @author nieqiurong
 * @since 2016-08-25
 * @deprecated 2018-11-26
 */
 

TK-Mybatis

不支持

5. 分页

Mybatis-Plus
分页插件

Tk.Mybatis
pagehelper

6. 额外功能


Mybatis-Plus
逻辑删除
内置代码生成器:采用代码或者 Maven 插件可快速生成 Mapper 、 Model 、 Service 、 Controller 层代码,支持模板引擎,更有超多自定义配置等您来使用
内置分页插件:基于 MyBatis 物理分页,开发者无需关心具体操作,配置好插件之后,写分页等同于普通 List 查询
内置性能分析插件:可输出 Sql 语句以及其执行时间,建议开发测试时启用该功能,能快速揪出慢查询
内置全局拦截插件:提供全表 delete 、 update 操作智能分析阻断,也可自定义拦截规则,预防误操作
内置 Sql 注入剥离器:支持 Sql 注入剥离,有效预防 Sql 注入攻击
多数据源
Tk.Mybatis
乐观锁
支持分页 pagehelper
多数据源
 

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部