最近使用MyBatis遇到一个问题,在for循环中调用获取序列的方法,返回值总是一个。
<select id="queryUcfUserBatchImportId" resultType="java.lang.String">
SELECT UCF_USER_BATCH_IMPORT_SEQ.NEXTVAL FROM DUAL
</select>
后来百度一下才知道是因为缓存的原因,禁用MyBatis缓存后成功获取到增长序列
<select id="queryUcfUserBatchImportId" resultType="java.lang.String" useCache="false" flushCache="true">
SELECT UCF_USER_BATCH_IMPORT_SEQ.NEXTVAL FROM DUAL
</select>
flushCache为true,表示任何时候语句被调用,都会导致本地缓存和二级缓存被清空。
————————————————
版权声明:本文为CSDN博主「diweikang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/diweikang/article/details/72272301