Mybatis的标签用法如下:

1.用法一:在动态SQL中使用标签

标签可以用于将多个条件拼接成一个WHERE子句,避免在拼接条件时出现多余的AND或OR运算符。

示例代码:

<select id="selectUsers" parameterType="map" resultType="User">
  SELECT * FROM user
  <where>
    <if test="name != null">
      AND name = #{name}
    </if>
    <if test="age != null">
      AND age = #{age}
    </if>
    <if test="email != null">
      AND email = #{email}
    </if>
  </where>
</select>

2.用法二:在动态SQL中使用标签嵌套标签

标签还可以嵌套标签,用于更加复杂的动态SQL拼接。

示例代码:

<select id="selectUsers" parameterType="map" resultType="User">
  SELECT * FROM user
  WHERE 1=1
  <if test="name != null">
    AND name = #{name}
  </if>
  <if test="age != null">
    AND age = #{age}
  </if>
  <if test="email != null">
    AND email = #{email}
  </if>
  <where>
    <if test="status != null">
      AND status = #{status}
    </if>
    <if test="createTime != null">
      AND create_time = #{createTime}
    </if>
  </where>
</select>

在这个例子中,标签嵌套了两个标签,用于拼接更加复杂的WHERE子句。注意这里的标签不能放在WHERE子句的前面,否则会报错


原文地址: https://www.cveoy.top/t/topic/gPYM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录