【Mybatis】使用sql标签封装可复用SQL片段,使用include标签对其进行调用
include标签在jsp和themeleaf中利用率很高,同样的复用功能在mybatis里也有体现,用法也差不多。
具体来说:就是把可能多次使用的SQL片段封装到一个sql标签中,冠以id,需要使用时便以include标签把其内容拉取过来。
比如下文的XML中:
<mapper namespace="com.hy.dao.PersonMapper"> <select id="fetchOne" resultType="com.hy.entity.Person"> select <include refid="fields"/> from person where id=#{id} </select> <sql id="fields"> id,name,f1,f2,f3 </sql> </mapper>
表字段就被封装到名为fields的<sql>里,在上方采用了<include refid="fields"/>进行拉取。
此标签的意义在于减少重复代码。
END