if标签
通过if标签,可以判断字段是否为空。
<select id="queryPersonWithTag" resultType="Person" parameterType="Person">
select * from person where
<if test="id!=null and id != ''">
id = #{
id}
</if>
<if test="age!=null and age != ''">
and age = #{
age}
</if>
</select>
where标签
查看以上代码可以发现,若id为空,则语句变成 where and age ,会报错,解决办法有两种:
1.在where后方添加 1=1
2.使用where标签,where标签会自动处理掉第一个and
<select id="queryPersonWithTag" resultType