官网:逻辑删除 | MyBatis-Plus


1.数据库字段



得有一个字段用来表示是否被删除。


记得加上注解@TableLogic


也可以加上值,表示被删除具体得值,和没有被删除具体的值。


@TableLogic(value = "1",delval = "0")

源码:





2.yml加配置

mybatis-plus:

 mapper-locations: classpath:/mapper/**/*.xml

 global-config:

   db-config:

     id-type: auto

     logic-delete-value: 1

     logic-not-delete-value: 0

主要是:


     logic-delete-value: 1

     logic-not-delete-value: 0

第一个表示被删除得,第二个表示没有被删除。


3.具体代码实现

controller层


   /**

    * 删除

    */

   @RequestMapping("/delete")

 //  @RequiresPermissions("product:pmscategory:delete")

   public R delete(@RequestBody Long[] catIds){

 pmsCategoryService.removeMenuByIds(Arrays.asList(catIds));

       return R.ok();

   }

service层


   @Override

   public void removeMenuByIds(List<Long> asList) {

       baseMapper.deleteBatchIds(asList);

   }

4.打印日志

可以再yml中加入:


logging:

 level:

   com.guli: debug