ibatis实现双重循环,类似于如下结构
for(int i=0;i<size;i++){
for(int j=0;j<size;j++){}
}
如下,第二层iterate标签里俩中括号间要加个点。
<iterate prepend="AND" conjunction="AND" property="sqlstrs">
<iterate open="(" close=")" conjunction="OR" property="sqlstrs[]">
$sqlstrs[].[]$
</iterate>
</iterate>
传递的数组在java中是这个
List<List<String>> sqlstrs;
例如sqlstrs是9*9的数组。
那么生成的sql是
AND (sqlstrs[0][0] OR sqlstrs[0][1] OR sqlstrs[0][2]) AND (sqlstrs[1][0] OR sqlstrs[1][1] OR sqlstrs[1][2]) AND (sqlstrs[2][0] OR sqlstrs[2][1] OR sqlstrs[2][2])