欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SpringBoot——MybatisPlus条件查询

程序员文章站 2024-03-02 13:39:16
...

1.实体类

 package com.youyou.address.entity;


import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;


/**
 * 数据库实体,联系人
 */
@Data
@TableName("TS_Contacter")
public class ContacterDO {
    /**
     * 主键
     */
    private String id;
    /**
     * 姓名
     */
    private String name;

    /**
     * 性别(0,女;1,男)
     */
    private String sex;

    /**
     * 年龄
     */
    private Integer age ;

    /**
     * 电话
     */
    private  String phone;

    /**
     * 地址
     */
    private String location;

    /**
     * 删除(0,未删除;1,删除)
     */
    private String dflag ;
}

2.dao

 package com.youyou.address.dao;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.youyou.address.entity.ContacterDO;
import org.springframework.stereotype.Repository;

/**
 * 联系人dao
 *
 * @author 刘朋
 * <br/>date 2018-11-02
 */
@Repository
public interface ContacterDao extends BaseMapper<ContacterDO> {
}

3.service层代码

需要通过条件查询传入一个参数queryWrapper

 /**
     * 根据 entity 条件,查询全部记录
     * @return
     */
    public List<ContacterDO> selectList(QueryWrapper<ContacterDO> queryWrapper) {
        return dao.selectList(queryWrapper);
    }

4.controller层代码

     @ApiOperation(value = "条件查询所有")
    @GetMapping("/findAll")
    public List<ContacterDO> findAll(ContacterDO contacterDO) {
        QueryWrapper<ContacterDO> queryWrapper = new QueryWrapper<>(contacterDO) ;
        return service.selectList(queryWrapper);
    }

关键就是controller的代码,需要将整个DO对象传入到条件参数类中,MybatisPlus会根据对应的属性进行查询,如果属性值为空则不查询此字段。

MybatisPlus的条件查询就是这么简单,也可以和分页查询同时使用,使用selectPage方法

相关标签: springboot