mybatis遍歷array數組與集合、json


遍歷數組

int saveOptions(@Param("items")String[] items, @Param("questionId")int questionId) throws Exception;

<insert id="saveOptions">
<foreach item="item" index="index" collection="items" separator=";">
insert into options values(#{item},#{questionId},1)
</foreach>
</insert>

遍歷集合:參考之前文章

 

20180626:嵌套list遍歷

 
         

int saveOptions(@Param("list")List<List<String>> list) throws Exception;


<
insert id="saveOptions"> insert into options(optionsName,remark,selectOptions) values <foreach item="items" collection="list" separator=","> ( <foreach item="item" collection="items" separator=","> #{item} </foreach> ) </foreach> </insert>

其中collection="list"是指遍歷的集合名稱是list

item="items"是指遍歷的每一項別名叫items


20190319傳入json:
//傳參:
JSONObject jsonParam= new JSONObject();
jsonParam.put("yananId=", 1);
jsonParam.put("yananName=","張三");
//接口
List<Map<String, Object>> getListByWhere(@Param("jsonParam")JSONObject jsonParam);

//mybatis
    <select id="getListByWhere" parameterType="net.sf.json.JSONObject" resultType="java.util.Map">
        select yananId,yananName
        from yanan 
        <foreach collection="jsonParam" open="where" separator="and" item="jsonValue" index="jsonKey">
            ${jsonKey} #{jsonValue}
        </foreach>
    </select>

打印sql:

select yananId,yananName from yanan where yananId=? and yananName =?


==> Parameters: 68(Integer), 張三(String)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM