问题描述
这几天在做尚硅谷的SSM整合,遇到多表查询出的数据不按照Id排序,新增出的数据乱序。
@Override
public List<Employee> getAll() {
return employeeMapper.selectByExampleWithDept(new EmployeeExample());
}
原因分析:
左外连接查询会根据主表向从表一个一个的查,导致从表的dept_id等于1的先查出来。:
解决方案:
在Service层修改代码,通过设置orderByClause属性进行排序,ASC按升序排列,DESC为按降序排列:
@Override
public List<Employee> getAll() {
EmployeeExample employeeExample = new EmployeeExample();
employeeExample.setOrderByClause("emp_id ASC");
return employeeMapper.selectByExampleWithDept(employeeExample);
}