sql标签:抽取可重用的sql片段,方便后面引用;
1. sql抽取:经常将要查询的列名,或者插入用的例名抽取出来方便引用;
2. include标签用来引用已经抽取出来的sql;
3. include还可以自定义一些 property, sql标签内部就可以使自定义的属性;
include–property:取值的正确方法:${prop}
#{不能使用这种方式}
<insert id="addEmps">
insert into(
<include refid="insertColumn">
<property name="testColomn" value="abc"/>
</include>
)
valuse(
<foreach collection="emps" item="emp",separator=",">
#{emp.lastName},#{emp.email,},#{emp.gender},#{emp.dept.id}
</foreach>
)
</insert>
<sql id="insertColumn">
<if test="_databaseId=='oracle'">
employee_id,last_name,email,${testColomn}
</if>
<if test="_databaseId=='mysql'">
last_name,email,gender,d_id
</if>
</sql>