温馨提示×

mybatis的choose和when如何配合

小樊
132
2024-08-02 04:49:08
栏目: 编程语言

在MyBatis中,choose和when标签通常与其他条件判断标签(如if和where)一起使用,用于根据条件选择不同的SQL语句块。下面是一个简单的示例:

<select id="selectUsers" resultType="User">
    SELECT *
    FROM users
    <where>
        <choose>
            <when test="name != null and name != ''">
                AND name = #{name}
            </when>
            <when test="age != null">
                AND age = #{age}
            </when>
            <otherwise>
                AND status = 'active'
            </otherwise>
        </choose>
    </where>
</select>

在上面的示例中,choose标签包含了多个when标签和一个otherwise标签。根据条件的不同,MyBatis会选择匹配的when标签中的SQL语句块来拼接到最终的SQL语句中。如果所有的when标签都不匹配,则会使用otherwise标签中的SQL语句块。

通过选择和when标签的配合,可以根据不同的条件动态生成SQL语句,从而实现灵活的条件查询功能。

0