mybatis 多表查询 resultMap结果集怎么传到Controller

Monicase 2017-10-20 10:42:52
<!-- 部门与员工,一对多,resultMap结果集映射 -->
<resultMap type="com.tsy.springmvc.model.system.Employee" id="ClassResultMap">
<id property="employeetID" column="employeetID"/>
<result property="employeetName" column="employeetName"/>
<result property="depatmentID" column="depatmentID"/>
<association property="department" javaType="com.tsy.springmvc.model.system.Department">
<id property="departmentID" column="departmentID"/>
<result property="departmentName" column="departmentName"/>
</association>
</resultMap>

<!-- 简单的两个表查询 -->
<select id="selectDepartmetAndEmployee" resultMap="ClassResultMap">
select *
from employee, department
where employee.departmentID = department.departmentID
</select>

--------------------------------------------------------------------------------------------------------------------------------
Controller

@RequestMapping("/")
public ModelAndView index(ModelAndView modelAndView) {
modelAndView.setViewName("index");
modelAndView.addObject("employeeAndDepartment", employeeService.selectDepartmetAndEmployee());
return modelAndView;
}

Service
public interface IEmployeeService extends IService<Employee> {

List<Employee> selectALLEmployee(Employee);
//这里我就不知道如何去写

}

①我不知道如何才能获取到多表查询的结果,resultMap映射了,但是不知道怎么使用。

②是一个简单的部门和员工, 我想在页面显示所有员工(员工的部门)。

③我是不是应该建立两个mybatis 查询,都是单表查询,然后通过先查询员工,得到员工的所有属性(包括部门ID)
然后在Controller中通过循环查询部门ID,得到一个与员工对应的部门表,然后再通过Model 1 Model 2 传输对应的两个List到页面?

...全文
377 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
lifewell1 2017-10-24
  • 打赏
  • 举报
回复
通过返回值 resultMap 是dao层的方法返回值 会在service层中获取 然后在service层返回改值 controller通过调用service方法获取

10,608

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 其他
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧