Как я могу добавить условие условия, которое не требуется, если элемент?

Скажем, у меня есть такой интерфейс.

@Mapper
interface UserMapper {
    List<User> search(@Nullable String namePattern, int minAge); 
}

Как мне сделать с minAge параметр, который не требуется <if/> элемент?

Должен ли я просто делать с <if test="true"/>?

<where>
  <if test="namePattern != null">
    name LIKE #{namePattern}
  </if>
  <if test="true"> <!-- just true??? -->
    AND age >= #{minAge}
  </if>
</where>

Можно второй очистить <if/> элемент?

<where>
  <if test="namePattern != null">
    name LIKE #{namePattern}
  </if>
  AND age >= #{minAge} <!-- will it blend? -->
</where>

1 ответ

Решение

Конечно. <where /> удаляет ненужное AND, так что он должен работать.

Другой подход - написать age состояние перед <if />с.

WHERE age >= #{minAge}
<if test="namePattern != null">
  AND name LIKE #{namePattern}
</if>
Другие вопросы по тегам