天天看点

学习mybatis3的第6天

学习mybatis3的第6天

学习与select,insert,delete,update同级的标签-sql标签

sql标签是用来抽取可重用的sql片段。方便后面引用。有些查询或者插入的场景,那些需要写的字段很多,经常要重复写。

1、接口里面的方法。

public void addEmps(@Param("emps") List<Employee> emps);      

2、之前的sql映射文件的编写。

<insert id="addEmps">
        INSERT INTO `tbl_employee`(last_name,email,gender,d_id)
        VALUES
               <foreach collection="emps" item="emp" separator=",">
                   (#{emp.lastName},#{emp.email},#{emp.gender},#{emp.dept.id})
               </foreach>
    </insert>      
学习mybatis3的第6天

3、现在的sql映射文件:

<insert id="addEmps">
        INSERT INTO `tbl_employee`(
            <include refid="insertCol"></include>
        )
        VALUES
               <foreach collection="emps" item="emp" separator=",">
                   (#{emp.lastName},#{emp.email},#{emp.gender},#{emp.dept.id})
               </foreach>
    </insert>

    <sql id="insertCol">
        last_name,email,gender,d_id
    </sql>      
学习mybatis3的第6天

Mybatis的缓存机制

一级缓存(本地缓存,SqlSession级别)