1. 程式人生 > 其它 >mybatis foreach用法例項

mybatis foreach用法例項

技術標籤:java

實際上是穿了一個map給 Dao層

        int papercount=0;
        int readcount=0;
        int sharecount=0;
        //
        List<String> paperIds = new ArrayList<>();
        for (ShopPaper shopPaper : shopPapers) {
            paperIds.add(shopPaper.getPaperId());
        }
        HashMap<
String, List>
map1 = new HashMap<>(); //!!! map1.put("paperIds",paperIds); ShopPaperPraise shopPaperPraise = shopPaperService.selectPraiseSum(map1); papercount=paperIds.size(); readcount=shopPaperPraise.getReadNum(); sharecount=shopPaperPraise.
getShareNum();
 /**
     * 根據電報id集合返回閱讀分享的總和
     * */
    ShopPaperPraise selectPraiseSum(Map map);

foreach collection中的paperIds是穿過來map的key

<!--  select sum(read_num) read_num, sum(share_num) share_num from is_shop_paper_praise where paper_id in('29','22')-->
  <select id="selectPraiseSum"
parameterType="map" resultType="com.ovopark.shoppaper.model.ShopPaperPraise"> select sum(read_num) read_num, sum(share_num) share_num from is_shop_paper_praise <where> <foreach collection="paperIds" item="paperId" open="paper_id in(" close=")" separator=","> #{paperId} </foreach> </where> </select>