mybatisplus 基本操作

Mybatisplus日志
mybatis-plus.configuration.log-impl=org.apach.ibatis.logging.stdout.StdOutImpl

设置mp的主键生成策略
在实体类的主键上加注解   @TableId(type=IdType.AUTO)
ID_WORKER   mp自带策略,生成19位值,数字类型使用这种策略,long
ID_WORKER_STR    字符串类型

自动填充
@TableField(fill = FieldFill.INSERT)
@TableField(fill = FieldFill.INSERT_UPDATE)
编写填充属性类  implement MetaObjectHandler
@Override
public void insertFill(MetaObject me) {
    this.setFieldValueByName("createTime", new Date(), metaObject);
}

mp乐观锁实现
 1.数据库添加字段 version
  2.实体类添加注解@Version  和 @TableField(fill = FieldFill.INSERT)
  3.元数据处理器接口添加version的insert默认值  setFieldValueByName("version", 1,
metaObject);
  4.配置乐观锁插件
  @EnableTransactionManager
  @Configuration
  @MapperSacn("com./...mapper")
    @Bean
    public OptimisticLockerInterceptor optimisticLockerInterceptor(){
        return new OptimisticLockerInterceptor();
    }

 取出记录时,获取当前version 
 更新时,带上version
 执行更新时,set version = new Version where version = oldVersion
 如果version不对,更新失败

mp简单操作
    1.根据id查询/删除数据   userMapper.selectById   deleteById
    2.多个id批量查询/删除   userMapper.selectBatchIds(Array.asList(1L, 2L, 3L))  
deleteBatchIds...
    3.分页查询  
        1.配置分页插件  
        @Bean
        public PageinationInterceptor  pageinationInterceptor(){return new
PageinationInterceptor()}
        2.Page<User> page = new Page<>(1,3)
          userMapper.selectPage(page. null);
    page的属性值,getCurrent //当前页  getRecords  //每页数据list集合   getSize  
//每页显示记录数  getTotal 总记录数  getPages  总页数  hasNext  hasPrevious  是否有
上下页

mp 逻辑删除
    1.字段加注解  @TableLogic
    2.配置插件  @Bean  ISqlInjector return new LogicSqlInjector()
    3.加配置(可有可无)  mybatis-plus.global-config.db-config.logic-delete-
value=1   ...logic-not-delete..=0  

性能分析插件
...

Wapper
QueryWapper(常用)
QueryWapper<User> queryWapper = new QueryWapper<>()
queryWapper.eq("name", "Tom")         ne
queryWapper.between("age", 20, 30)    notbetween
allEq(map)   map.put("id", 2); put("name", "Tom")
.....
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值