在MyBatis中運用if-else語句進行邏輯控制的方法是在SQL語句中使用<if>
標簽和<choose>
標簽。<if>
標簽可以用來添加條件判斷,<choose>
標簽可以用來包裹多個<when>
標簽和一個<otherwise>
標簽,實現多個條件判斷。
示例如下:
<select id="getUserList" resultType="User">
SELECT * FROM user
<where>
<if test="username != null">
AND username = #{username}
</if>
<if test="age != null">
AND age = #{age}
</if>
<choose>
<when test="gender != null and gender == 'male'">
AND gender = 'male'
</when>
<when test="gender != null and gender == 'female'">
AND gender = 'female'
</when>
<otherwise>
AND gender = 'unknown'
</otherwise>
</choose>
</where>
</select>
在上面的示例中,<if>
標簽用來判斷username
和age
是否為空,<choose>
標簽用來判斷gender
的值是男性、女性還是未知性別,并根據不同的條件拼接SQL語句。