mybatis參數中包含數組和集合時候怎麼傳參?


先說第一種

1.包含有數組的

public List<Base_SysParam> getSysParamById(@Param("compId")String compId,@Param("paramId")String[] paramId);


XML中

<select id="getSysParamById" resultType="Base_SysParam" parameterType="String">
        SELECT * FROM BASE_SYSPARAM
        WHERE 1=1
            AND COMPID=#{compId}
            AND PARAMID in
            <foreach collection="paramId" item="item" index="index" open="("
                separator="," close=")">
                #{item}
            </foreach>
        ORDER BY TYPE,PARAMID
    </select>



2.再說包含有集合的

public Integer addCompParams(@Param("compId")String compId,@Param("insert") List<Base_SysParam> insert);


XML中

<insert id="addCompParams" parameterType="Base_SysParam">
        INSERT INTO BASE_COMPSYSPARAM
        (PARAMID,VALUE,COMPID)
        <foreach collection="insert" index="index" item="item" separator=" UNION ALL">  
            SELECT #{item.paramId},#{item.value},#{compId}
        </foreach>
    </insert>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章