动态sql补

2022-08-09  本文已影响0人  何以解君愁
<!-- 使用foreach批量插入用户-->
        <insert id="insertMultiUsers">
            insert into user(user_name,gender,email,address,dept_id)
            values
            <foreach collection="users" item="user" separator=",">
                (#{user.userName},#{user.gender},#{user.email},#{user.address},#{user.deptId})
            </foreach>
        </insert>
<!--关联表多对一的查询-->
构造函数加一个private Dept dept;
//mapper层传一个Integer类型的id
<select id="getEmpAndDeptByEmpId" resultType="Emp">
    select
    t_emp.*,t_dept.* from t_emp left join t_dept
    on t_emp.dept_id = t_dept.dept_id where t_emp. emp_id = #{empId}
</select>
//级联处理多对一映射问题
<resultMap id="empAndDeptResultMap" type="Emp">
    <id column="emp_id" property="empId"></id>
    <result column="emp_name" property="empName"></result>
    <result column="age" property="age"></result>
    <result column="gender" property="gender"></result>
    <result column="dept_id" property="dept.deptId"></result>
    <result column="dept_name" property="dept.deptName"></result>
</resultMap>
association处理多对一映射问题:
<resultMap id="empAndDeptResultMap" type="Emp">
    <id column="emp_id" property="empId"></id>
    <result column="emp_name" property="empName"></result>
    <result column="age" property="age"></result>
    <result column="gender" property="gender"></result>
    <association property="dept" javaType="Dept">
        <id column="dept_id" property="deptId"></id>
        <result column="depk_name" property="deptName"></result>
    </association>
</resultMap>
<!--关联表一对多的查询-->
构造函数加一个private List<Emp> emp;
//mapper层传一个Integer类型的id
<select id="getEmpAndDeptByEmpId" resultType="Emp">
    select
    t_emp.*,t_dept.* from t_emp right join t_dept
    on t_emp.dept_id = t_dept.dept_id where t_emp. emp_id = #{empId}
</select>
<resultMap id="deptAndEmpResultMap" type="Dept">
    <id column="dept_id" property="deptId"></id>
    <result column="dept_name" property="deptName"></result>
    <collection property "emp" ofype="Emp">
        <id column="emp_id" property="empId"></id>
        <result column="emp_name" property="empName"></result>
        <result column="age" property="age"></result>
        <result column="gender" property="gender"></result></collection>
 </resultMap>
上一篇 下一篇

猜你喜欢

热点阅读