Mybatis传入List实现批量更新的代码实例
ty0903csdn 人气:0Dao层写法
/** * 批量更新新库存 * @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"。
注意:这种方法必须在配置连接数据库url后面带一个参数 &allowMultiQueries=true,表示允许批量操作,例 jdbc:mysql://localhost:3306/mysqlTest?characterEncoding=utf-8&allowMultiQueries=true
加载全部内容