循环执行SQL的问题

循环执行SQL时,SQL需要一个list参数,那service层是在循环外创建一个list,循环执行完一次SQL后用.clear()清空,再执行下一次循环,还是每次循环时,在循环中创建新list,哪种好?

如果循环次数少,用哪种都可以,如果循环次数多,用第一种,循环外创建

都不好,直接用动态SQL

1)循环中查询数据库是不好的
2)我测试过,list.size() > 1000的SQL的性能会急剧下降
3)如果确实要用,放到外面,且尽量的少循环