第三节 QBC查询
1、概念
QBC:Query By Criteria
QBC查询最大的特点就是将SQL语句中的WHERE子句进行了组件化的封装,让我们可以通过调用Criteria对象的方法自由的拼装查询条件。
2、例子
// 1.创建EmployeeExample对象<br /> EmployeeExample example = new EmployeeExample();// 2.通过example对象创建Criteria对象<br /> EmployeeExample.Criteria criteria01 = example.createCriteria();<br /> EmployeeExample.Criteria criteria02 = example.or();// 3.在Criteria对象中封装查询条件<br /> criteria01<br /> .andEmpAgeBetween(9, 99)<br /> .andEmpNameLike("%o%")<br /> .andEmpGenderEqualTo("male")<br /> .andEmpSalaryGreaterThan(500.55);criteria02<br /> .andEmpAgeBetween(9, 99)<br /> .andEmpNameLike("%o%")<br /> .andEmpGenderEqualTo("male")<br /> .andEmpSalaryGreaterThan(500.55);SqlSession session = factory.openSession();EmployeeMapper mapper = session.getMapper(EmployeeMapper.class);// 4.基于Criteria对象进行查询<br /> List<Employee> employeeList = mapper.selectByExample(example);for (Employee employee : employeeList) {<br /> System.out.println("employee = " + employee);<br /> }session.close();// 最终SQL的效果:<br /> // WHERE ( emp_age between ? and ? and emp_name like ? and emp_gender = ? and emp_salary > ? ) or( emp_age between ? and ? and emp_name like ? and emp_gender = ? and emp_salary > ? )
