MyBatis处理空值的方法有两种:
<select id="getUserById" parameterType="java.lang.Integer" resultType="User">
SELECT * FROM user
WHERE id = #{id}
<if test="name != null">
AND name = #{name}
</if>
</select>
<select id="getUserById" parameterType="java.lang.Integer" resultType="User">
SELECT * FROM user
<where>
id = #{id}
<if test="name != null">
AND name = #{name}
</if>
</where>
</select>
这两种方法都可以有效地处理参数为空时不添加条件,避免出现SQL语法错误。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: hibernate和mybatis有什么区别