Ouery By Criteria
Criteria是Criterion的复数形式,意思是:规则、标准、准则,在SQL语句中相当于查询条件。
QBC查询是将查询条件通过Java对象进行模块化封装。
例:
//目标Sql:WHERE(emp_Sarlary>? AND emp_age<?) OR((emp_Sarlary<? AND emp_age>?)
//1.创建Example对象
Example example = new Example(Example.class);
//*********************
//1.设置排序信息
example.orderBy("empSalary").asc().orderBy("empAge").desc();
//2.设置去重
example.setDistinct(true);
//3.设置select字段
example.selectProperties("empName","empSalary")
//*********************
//2.通过Example对象创建Criteria对象
Criteria criteria01 = example.createCriteria();
Criteria criteria02 = example.createCriteria();
//3.在两个Criteria对象中分别设置查询条件
criteria01.andGreaterThan("empSalary",3000).andLessThan("empAge",25);
criteria02.andLessThan("empSalary",5000).andGreaterThan("empAge",30);
//4.使用OR关键词组装两个Criteria对象
example.or(criteria02);
//5.执行查询
//employeeMapper.selectByExample(example);
List<Employee> list = employeeService.getEmpListByExample(example);
for(Employee e :list){
System.out.println(e);
}