簡體   English   中英

如何使用 <foreach> Mybatis中正確聲明

[英]How to use the <foreach> statement correctly in Mybatis

當我使用statemant時,總會有問題,

Parameter 'item' not found.

這是我的sql statemant:

<select id="getTest" resultType="java.util.HashMap" parameterType="java.util.List">
    <![CDATA[
          SELECT COUNT(*) AS commentCount, WORK_ID AS workId FROM TB_COMMENT WHERE TB_COMMENT.WORK_ID IN
          <foreach item="item" collection="list" separator="," open="(" close=")" index="">
              #{item}
          </foreach>
         GROUP BY TB_COMMENT.WORK_ID
    ]]>
</select>

這是我的java statemant:

@MapKey("workId")
public Map<Integer, String> getTest(List<Integer> workIds)throws DataAccessException;

工具:

@Resource
private StatusMapper statusMapper;
List<Integer> list = new ArrayList<>();
for (WorkModel i : pictures)
     if(!TextUtils.isEmpty(i.getUserId()))
         list.add(Integer.parseInt(i.getUserId()));
Map<Integer,String> tset = statusMapper.getTest(list);

任何幫助都是希望的,謝謝。

好的,似乎在中,動態sql無法解析,並且我將其刪除了,它可以工作。 感謝在這里度過的人們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM