通过级联属性复制解决多对一的映射关系

通过association解决多对一的映射关系

 

 

 

通过级联属性复制解决多对一的映射关系

 

 

Mapper层

@Mapper
public interface ParameterMapper {
    Emp GetEmpAndDept(@Param("id") Integer eid);
}

 

映射文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mybatis_review.mapper.ParameterMapper">
    <resultMap id="GetEmpAndDeptMap" type="com.example.mybatis_review.bean.Emp">
        <id property="eid" column="eid"></id>
        <result property="age" column="age"></result>
        <result property="email" column="email"></result>
        <result property="empName" column="emp_name"></result>
        <result property="did" column="did"></result>
        <result property="dept.did" column="did"></result>
        <result property="dept.deptName" column="dept_name"></result>
    </resultMap>
<!--    Emp GetEmpAndDept(@Param("id") Integer eid);-->
    <select id="GetEmpAndDept" resultMap="GetEmpAndDeptMap">
        select * from t_emp left join t_dept on t_emp.did = t_dept.did where t_emp.eid=#{id}
    </select>
</mapper>

 

 

 

 

通过association解决多对一的映射关系

 

Mapper

 

@Mapper
public interface ParameterMapper {
    Emp GetEmpAndDept(@Param("id") Integer eid);
}

 

 

映射文件

 

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.mybatis_review.mapper.ParameterMapper">
    <resultMap id="GetEmpAndDeptMap" type="com.example.mybatis_review.bean.Emp">
        <id property="eid" column="eid"></id>
        <result property="age" column="age"></result>
        <result property="email" column="email"></result>
        <result property="empName" column="emp_name"></result>
        <result property="did" column="did"></result>
        <association property="dept" javaType="com.example.mybatis_review.bean.Dept">
            <id property="did" column="did"></id>
            <result property="deptName" column="dept_name"></result>
        </association>
    </resultMap>
<!--    Emp GetEmpAndDept(@Param("id") Integer eid);-->
    <select id="GetEmpAndDept" resultMap="GetEmpAndDeptMap">
        select * from t_emp left join t_dept on t_emp.did = t_dept.did where t_emp.eid=#{id}
    </select>
</mapper>

 

posted on 2022-06-10 22:21  西凉#  阅读(31)  评论(0)    收藏  举报