# 总体定位

本模块为开发基础工具,与自动生成getter、setter的lombok插件原理类似, 本插件能够自动生成SQL,自动生成Mybatis增删改查等基本方法;能够构建简单的逻辑调用方法。

# 特点

  • 标准化:定义了前后端数据传输标准和分页模型标准。
  • 代码无侵入,只需要引入依赖包这可,学习成本低。
  • 无需MyBatis-Plus特殊集成,按照普通Spring Mybatis集成就可以引入依赖包就可以完成。
  • 避免了MyBatis-Plus的不足:泛型、侵入性强等。
  • 编译时生成xml或者字节码,对性能没有影响。
  • 支持typeHandler,可自动将字段转成json或者是其他对象。
  • 自动根据模型生成SqlMap文件。
  • 能够生成简单的逻辑调用方法。
  • 修改模型后sql语句自动重新生成。
  • 自动生成控制层代码,自动生成控制层对象模型。
  • 支持运行时数据自动填充,减少逻辑层代码处理。
  • 支持运行时数据权限自动添加过滤。
  • 支持防篡改信息生成与篡改检查。
  • 定义SPI,id与加解密能力由外部提供。
  • 结构良好、边界清晰、代码规范。
  • 生成内容可以在classes中查看,分析定位问题方便,可观测性好。
  • IDE插件使用简单方便,易于使用。

# 效果

  • 根据统计,可以自动生成30%左右的代码量;
  • 避免大量的低级错误,如:字段名写错、多个逗号等
  • 后期调整方便,只需要调整模型,sql自动调整
  • 数据权限支持良好

# 支持范围

  • MySQL:支持
  • Oracle:有限支持
  • jdk1.8: 支持
  • jdk17:支持

# 成熟度

  • 支持jdk1.8的版本已发布8个大版本,在多个项目里面应用,效果非常好。
  • 支持jdk17的版本已发布2个版本,在1个项目里面应用,效果非常好。