联合查询一对多
    设计一个方法 根据部门编号deptno 查询部门的信息+所属于当前部门的所有员工信息
    设计一个方法查询(所有)部门的信息+所属于当前部门的所有员工信息
    image.png
    image.png
    DeptDao

    1. package dao;
    2. import domain.Dept;
    3. import domain.Emp;
    4. import org.apache.ibatis.annotations.*;
    5. import java.util.List;
    6. public interface DeptDao {
    7. //设计一个方法 根据部门编号deptno 查询部门的信息+所属于当前部门的所有员工信息
    8. @Select("select * from dept where deptno = #{deptno}")
    9. @Results(
    10. id = "selectDept",
    11. value = {
    12. @Result(property = "deptno",column = "deptno",id = true),
    13. @Result(property = "dname",column = "dname"),
    14. @Result(property = "loc",column = "loc"),
    15. @Result(property = "empList",column = "deptno",
    16. javaType = List.class,//注意类型是List不是泛型的类型
    17. many = @Many(select = "selectEmpForDept"))
    18. }
    19. )
    20. public Dept selectOne(Integer deptno);
    21. @Select("select * from emp where deptno = #{deptno}")
    22. public Emp selectEmpForDept(Integer deptno);
    23. @Select("select * from dept")
    24. @ResultMap("selectDept")
    25. public List<Dept> selectAll();
    26. }