mybatisplus之setSql动态更新语句

一、概念

这是mybatis-plus官方文档介绍

mybatisplus之setSql动态更新语句_第1张图片

 二、具体实现

1.我们定义这样一个接口

    @PostMapping ("update")
    public boolean update(Integer id,boolean demo){
      return  studentservice.update(id,demo);
    }

2.impl

    public boolean update(Integer id,boolean demo) {
           return new LambdaUpdateChainWrapper<>(baseMapper)
                    .setSql(demo,"name='张三'")
                    .setSql(!demo,"name='李四'")
                    .eq(student::getId,2)
                    .update();
        }

我们传一个id和boolean值,LambdaUpdateChainWrapper会根据不同的boolean值执行不同的sql

3.假如我们传2 true

mybatisplus之setSql动态更新语句_第2张图片

 

 这是我们数据库原始数据

 执行接口后

 

 4.假如我们传2 false

mybatisplus之setSql动态更新语句_第3张图片

执行后数据库变为

 

你可能感兴趣的:(Mybatis-plus,java,servlet)