ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Mybatis-Plus插件配置

2019-07-01 17:45:17  阅读:172  来源: 互联网

标签:mapper 插件 return private Plus new Mybatis biz public


 

  • yml配置

     1 # Mybatis-Plus
     2 mybatis-plus:
     3   # 配置mapper的扫描,找到所有的mapper.xml映射文件
     4   mapper-locations: com.xxx.project.biz.*.mapper.*Mapper.xml,com.xxx.project.biz.*.*.mapper.*Mapper.xml
     5   #实体扫描
     6   typeAliasesPackage: com.xxx.project.biz.*.entity,com.xxx.project.biz.*.*.entity
     7   global-config:
     8     # 数据库相关配置
     9     db-config:
    10       #主键类型  NONE:"数据库ID自增", INPUT:"用户输入ID", ID_WORKER:"全局唯一ID (数字类型唯一ID)", UUID:"全局唯一ID UUID", AUTO: MP自动决定;
    11       id-type: id_worker
    12       #字段策略 IGNORED:"忽略判断", NOT_NULL:"非 NULL 判断", NOT_EMPTY:"非空判断"
    13       field-strategy: not_empty
    14       #驼峰下划线转换
    15       column-underline: true
    16       #数据库大写下划线转换
    17       capital-mode: true
    18       #table-prefix: sys_
    19       #逻辑删除配置
    20       logic-delete-value: 1
    21       logic-not-delete-value: 0
    22       # 数据库类型
    23       db-type: mysql
    24     #刷新mapper 调试神器
    25     refresh: true
    26   # 原生配置
    27   configuration:
    28     map-underscore-to-camel-case: true
    29     cache-enabled: false
    30     # 打印sql日志
    31     log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  • 乐观锁、逻辑删除、物流分页插件配置

     1 /**
     2  * MybatisPlus 扫描mapper配置 以及 插件配置
     3  * @Author: xhq
     4  * @Version: 1.0
     5  */
     6 @Configuration
     7 @MapperScan({"com.xxx.project.biz.*.mapper","com.xxx.project.biz.*.*.mapper"})
     8 public class MybatisPlusConfig {
     9 
    10     /**
    11      * 物理分页 插件
    12      * @return
    13      */
    14     @Bean
    15     public PaginationInterceptor paginationInterceptor() {
    16         return new PaginationInterceptor();
    17     }
    18 
    19     /**
    20      * 乐观锁 插件
    21      * @return
    22      */
    23     @Bean
    24     public OptimisticLockerInterceptor optimisticLockerInterceptor() {
    25         return new OptimisticLockerInterceptor();
    26     }
    27 
    28     /**
    29      * 逻辑删除
    30      * @return
    31      */
    32     @Bean
    33     public ISqlInjector sqlInjector() {
    34         return new LogicSqlInjector();
    35     }
    36 }
     1 /**
     2  * Entity基类
     3  * 
     4  * @author xhq
     5  */
     6 public class BaseEntity implements Serializable {
     7 
     8     private static final long serialVersionUID = 1L;
     9 
    10     /** 主键id @JSONField该注解是解决Long类型太长传值前端精度丢失*/
    11     @JSONField(serializeUsing= ToStringSerializer.class)
    12     private Long id;
    13 
    14     /** 创建时间 插入自动填充 */
    15     @TableField(fill = FieldFill.INSERT)
    16     private Date createTime;
    17 
    18     /** 更新时间 插入和更新自动填充 */
    19     @TableField(fill = FieldFill.INSERT_UPDATE)
    20     private Date updateTime;
    21 
    22     /** 备注 */
    23     private String remark;
    24 
    25     /** 逻辑删除 0:正常 1:删除 */
    26     @TableLogic
    27     private Integer deleted;
    28 
    29     /** 乐观锁 */
    30     @Version
    31     private Integer version;
    32 
    33     getter and setter... ...
    34 }
  • 自动填充字段配置

     1 /**
     2  * mybatis-plus 自定义自动填充字段处理器
     3  * @Author: xhq
     4  * @Version: 1.0
     5  */
     6 @Component
     7 public class MyMetaObjectHandler implements MetaObjectHandler {
     8 
     9     @Override
    10     public void insertFill(MetaObject metaObject) {
    11         this.setInsertFieldValByName("createTime", new Date(), metaObject);
    12         this.setInsertFieldValByName("updateTime", new Date(), metaObject);
    13     }
    14 
    15     @Override
    16     public void updateFill(MetaObject metaObject) {
    17         this.setUpdateFieldValByName("updateTime", new Date(), metaObject);
    18     }
    19 }

     

标签:mapper,插件,return,private,Plus,new,Mybatis,biz,public
来源: https://www.cnblogs.com/xhq1024/p/11115480.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有