1. 程式人生 > >Mybatis傳入List實現批量更新

Mybatis傳入List實現批量更新

 Dao層寫法

/**
     * 批量更新新庫存
     * @param list
     * @return
     */
    int updateNewStock(@Param(value = "list") List<GreenBeanMsg> list);

xml具體實現程式碼

<update id="updateNewStock" parameterType="java.util.List">
        <foreach collection="list" item="bean" index="index" open="" close="" separator=";">
            UPDATE green_beans
            <set>
                stock=#{bean.stock}
            </set>
            <where>
                beanUid = #{bean.beanUid}
            </where>
        </foreach>
    </update>

注意的地方:我傳入的是一個集合,於是在dao層寫的方法里加上@Param(value“list”),mybatis將傳入的引數看做是一個集合list了。於是,在foreach中的collectio中就要寫作“list”;parameterType也定義為"java.util.List"。