MyBatis中如何使用if-else条件语句

avatar
作者
猴君
阅读量:0

在MyBatis中,可以使用<if><choose>标签来实现if-else条件语句的功能。

示例如下:

<select id="selectUsers" parameterType="map" resultType="User">   SELECT * FROM users   WHERE 1=1   <if test="username != null and username != ''">     AND username = #{username}   </if>   <if test="age != null and age > 0">     AND age = #{age}   </if> </select> 

在上面的例子中,<if>标签用于判断是否满足条件,如果满足条件则执行其中的SQL语句。如果需要实现多个条件的判断,可以使用<choose>标签。

示例如下:

<select id="selectUsers" parameterType="map" resultType="User">   SELECT * FROM users   WHERE 1=1   <choose>     <when test="role == 'admin'">       AND role = 'admin'     </when>     <when test="role == 'user'">       AND role = 'user'     </when>     <otherwise>       AND role = 'guest'     </otherwise>   </choose> </select> 

在上面的例子中,<choose>标签相当于if-else语句,<when>标签用于判断条件是否成立,<otherwise>标签则相当于else语句。通过这种方式可以实现if-else条件语句的功能。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!