iBatis配置文件中<isNotEmpty>标签不起作用
<iterateprepend="AND"open="("close=")"conjunction="OR"removeFirstPrepend="iterate"><i...
<iterate prepend="AND" open="(" close=")" conjunction="OR" removeFirstPrepend="iterate">
<isNotEmpty prepend="AND" open="(" close=")" property="[].orderno">
ORDERNO = #[].orderno#
<isNotEmpty prepend="AND" property="[].nodecode">
NODECODE = #[].nodecode#
</isNotEmpty>
</isNotEmpty>
</iterate>
配置如上,其中orderno为空时,SQL语句中仍有 ORDERNO =?。 展开
<isNotEmpty prepend="AND" open="(" close=")" property="[].orderno">
ORDERNO = #[].orderno#
<isNotEmpty prepend="AND" property="[].nodecode">
NODECODE = #[].nodecode#
</isNotEmpty>
</isNotEmpty>
</iterate>
配置如上,其中orderno为空时,SQL语句中仍有 ORDERNO =?。 展开
1个回答
展开全部
举例:可以这样写。
select rownum sno,cott.* FROM cottonbaginfo cott where 1=1
<dynamic >
<isNotEmpty prepend=" and " property="grower">grower = 111</isNotEmpty>
</dynamic>
因为 <dynamic > 是动态的,当<isNotEmpty >的条件不满足时就不会走,执行
”select rownum sno,cott.* FROM cottonbaginfo cott where 1=1“查询全部,当条件满足时就执行 <isNotEmpty >。
备注:通常batis中都是固定用法,不要随意更改。
select rownum sno,cott.* FROM cottonbaginfo cott where 1=1
<dynamic >
<isNotEmpty prepend=" and " property="grower">grower = 111</isNotEmpty>
</dynamic>
因为 <dynamic > 是动态的,当<isNotEmpty >的条件不满足时就不会走,执行
”select rownum sno,cott.* FROM cottonbaginfo cott where 1=1“查询全部,当条件满足时就执行 <isNotEmpty >。
备注:通常batis中都是固定用法,不要随意更改。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询