Skip to content

winmax/mybatis-plus-ext

 
 

Repository files navigation

1648883788444-1068117e-f573-4b0b-bbb9-8a3208810860.png

借用MybatisPlus的口号:为简化开发工作、提高生产率而生

img img

       尽管MybatisPlus (后文简称MP)相比较Mybatis丝滑了很多,但是,日常使用中,是否偶尔仍会怀念JPA(Hibernate)的那种纵享丝滑的感受,更好的一心投入业务开发中,如果你也是如此,那么恭喜你发现了MybatisPlusExt(后文简称MPE)。

       MPE对MP做了进一步的拓展封装,即保留MP原功能,又添加更多有用便捷的功能。同样坚持与MP对Mybatis的原则,只做增强不做改变,所以,即便是在使用MPE的情况下,也完全可以百分百的使用MP的方式,因此MP能做的,MPE不仅能做还能做的更多。实际上MPE只入侵了MP的一个类(TableInfoHelper),因为要完成注解继承合并的操作,必须重写MP的注解读取逻辑。

       增强功能具体体现在几个方面:自动建表(仅支持mysql)、数据自动填充(类似JPA中的审计)、关联查询(类似sql中的join)、冗余数据自动更新、动态条件等功能做了补充完善。

       如果感觉本框架对您有所帮助,烦请去Gitee 给个小星星⭐️,欢迎来撩共同进步。

img

TODO

如果大家有什么好的建议,欢迎提出来,视能力与时间,慢慢实现。

  • 自动建表,多种数据库支持(3.0.0分支)
    • 重构自动建表相关的代码
    • 默认支持MySQL
    • 支持SQLite
    • 支持PgSql
  • 自动建表,添加SQL执行过程留痕功能,方便生产环境直接导出使用
    • 新增配置项:mpe.auto-table.record-sql配置项,配置SQL记录到数据库
  • 加密解密场景
    • 新增@Encrypt: {autoDecode: boolean(默认ture), mode: enum(默认BASE64), encryptHandle?: class<IEncryptHandler>},字段自动加密(类似密码字段的需求,内置几种常用算法)
    • 新增IEncryptHandler接口,开放给使用方自定义加密解密算法。
    • 新增IEncryptCompare接口(空接口,内涵默认实现),Bean实现该接口,可具备对比不可逆加密算法的值,比如用户密码的场景。

官方教程

Mybatis-Plus-Ext教程

特别感谢

感谢JetBrains提供的软件支持

JetBrains Logo (Main) logo.

Packages

No packages published

Languages

  • Java 100.0%