mybatis-plus 多条件查询

package cn.x.org;

import cn.x.org.domain.Department;
import cn.x.org.mapper.DepartmentMapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.List;
@Slf4j
@SpringBootTest
@RunWith(SpringRunner.class)
public class 多条件查询 {
    @Autowired
    private DepartmentMapper departmentMapper;
    @Test//多条件查询
    public void findByParam(){
        //模糊查询+多条件组合查询
        //eg:查询条件:sn like 且 name like 且 manager_id = xx
        //分析:在mybatis-plus3中,提供一个查询条件的组合工具类 QueryWrapper
        QueryWrapper<Department> wrapper = new QueryWrapper<>();
        wrapper.like("sn",2).like("name","部门")
                .eq("manager_id",325);
        List<Department> departments = departmentMapper.selectList(wrapper);
        for (Department department: departments) {
            log.error(department.toString());//日志输出
        }
    }
    @Test //多条件查询,条件之间,用or连接
    public void findByParam2(){
        // (sn like xxx and name like xxx) or state = 1
        QueryWrapper<Department> wrapper = new QueryWrapper<>();
        wrapper.like("sn",2).like("name","部门")
                .or(i->i.eq("state",1));
        List<Department> departments = departmentMapper.selectList(wrapper);
        for (Department department: departments) {
            log.error(department.toString());//日志打印
        }
    }


}


版权声明:本文为weixin_53867644原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。