`

Mybatis Plus 高级用法

 
阅读更多
                    
   以下文章记录Mybatis Plus的一些高级用法,这些知识包括如何扩展一些Mybatis Plus提供的接口。
  1. 自动填充
     实现MetaObjectHandler接口的insertFill(......)和updateFill(......)方法
     填充优化
  2. 乐观锁
      防止更新冲突,通常采用一个版本号字段,在Mybatis Plus的的实现中通过添加插件
  OptimisticLockerInterceptor 的配置BEAN。同时在实体类中表示版本的字段上加上@Version
  注解。
  3. 性能分析
      PerformanceInterceptor插件,3.2.0后该插件移出,改用第三方扩展插件
  4. 使用mapper的二级分页缓存
     使用 CachePaginationInterceptor 插件替换默认分页,这样支持分页缓存
   当然最佳做法还是将缓存放到 service 层,你可以自定义自己的 BaseServiceImpl 重写注解父类方法,继承自己的实现。
     且在3.x版本中CachePaginationInterceptor 插件已经弃用
  5.多租户实现
     依赖分页插件PaginationInterceptor实现,本质是拦截时机问题,其次需要依赖多租户SQL解析器TenantSqlParser。并实现TenantHandler接口
  6.动态表名SQL解析器
    动态表名一般用于数据分散在多个相同表结构的不同名称的表中,例如日志数据一个月一张表。当然分库分表插件也可以实现。依赖于分页插件PaginationInterceptor,需要实现动态表名SQL解析器DynamicTableNameParser接口
  7. SQL注入器
     Mybatis Plus 通过SQL注入器为我们提供了强大的增加通用接口方法的能力,要注意的是在一个项目里只能配置一个注入器。同时框架也为大家提供了一些选装件像
InsertBatchSomeColumn
LogicDeleteByIdWithFill
AlwaysUpdateSomeColumnById
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics