mybatis<foreach>标签不能超过1000处理方案
【代码】mybatis<foreach>标签不能超过1000处理方案。
·
参考
(525条消息) mybatis解决<foreach>标签不能超过1000的问题_mybatis每次提交1000条数据_小海海不怕困难的博客-CSDN博客
本人自测

@Override
public List<Dict> a20000() {
ArrayList<String> list1 = new ArrayList<>();
for (int i = 0; i < 6000; i++) {
list1.add(String.valueOf(i));
}
List<Dict> list= dictMapper.select2000(list1);
return list;
}

<select id="select2000" resultType="com.atguigu.yygh.model.cmn.Dict">
select * from t_test
WHERE
t_test.id IN
<foreach collection="list1" index="index" open="(" close=")" item="id" separator=",">
<if test="(index % 999) == 998"> NULL) OR t_test.id IN(</if>
#{id}
</foreach>
</select>
最终的sql

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)