MyBatisのリストの空チェック方法は何ですか?
MyBatis では、List が空かどうかを判断するために、以下の方法を使用することができます。
- OGNL式を使用してListが空かどうかを判断する。
<if test="list != null and list.size() > 0">
SELECT * FROM table WHERE id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</if>
- 動的SQLタグを使用して判断する:
<choose>
<when test="list != null and list.size() > 0">
SELECT * FROM table WHERE id IN
<foreach collection="list" item="item" open="(" separator="," close=")">
#{item}
</foreach>
</when>
<otherwise>
SELECT * FROM table
</otherwise>
</choose>
Listが空かどうかに応じて、動的に対応するSQL文を生成することができます。Listが空の場合は、対応するSQL文が実行されません。