mybatis xml 动态sql
时间: 2023-11-09 19:26:47 浏览: 73
Mybatis动态sql
如何判断查询参数是否为null,如何处理参数为null的情况?
在mybatis xml中,可以使用if语句判断参数是否为null。当参数为null时,可以使用choose语句处理参数为null的情况。具体实现如下:
1. 判断参数是否为null
<select id="getUser" parameterType="java.util.Map" resultMap="userMap">
select * from user
where
<if test="name != null">
name=#{name}
</if>
<if test="name == null and id != null">
id=#{id}
</if>
</select>
2. 处理参数为null
<select id="getUser" parameterType="java.util.Map" resultMap="userMap">
select * from user
where
<choose>
<when test="name != null">
name=#{name}
</when>
<when test="id != null">
id=#{id}
</when>
<otherwise>
status=1
</otherwise>
</choose>
</select>
在以上代码中,choose语句会判断参数name和id是否为null。如果name不为null,则按照name查询;如果id不为null,则按照id查询;如果name和id都为null,则按照status查询。
阅读全文