Mybatis批量更新(四)

为了提高代码的执行效率,我们有时需要采用批量更新的更新方法。
直接上代码,算是补充了mybatis的批量操作。

	<update id="updateList" parameterType="java.util.List">
		<foreach collection="list" item="l" separator=";">
			UPDATE demo set name = #{l.name},age = #{l.age} where id = #{l.id}
		</foreach>
	</update>

在mybatis中取参数中值时,一般使用#{},避免使用${}。原因是SQL注入,有不了解的同学可以搜索下SQL操作中#和$的区别。如果非要使用${},并且在程序运行中有错误提示。可以查看服务配置数据源,是否开启SQL防注入。
一般在数据源配置中会有这一项

	  #wall用以阻止SQL注入
      filters: stat,wall,slf4j

在使用$报错可以把wall配置项去掉,取消阻止SQL注入,也有其他解决方式,有兴趣的同学可以搜索查询下。

	  #wall用以阻止SQL注入
      filters: stat,slf4j
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章