iBatis 的多重循环牵套

本文探讨了一个复杂的iBatis SQLMap配置案例,该案例使用了嵌套的迭代器来构建动态SQL查询。虽然理论上可行并通过了测试,但在实际应用中因数据量增大导致SQL文变得过于庞大。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 
    <select id="goreyTest" parameterClass="GoreyBean" resultMap="goreyResult">
        
SELECT
            
*
        
FROM 
            TBL
        
WHERE
            ID 
= #id#
            
AND 
            
<iterate property="objList" open="(" close=")" conjunction="OR">
                ( NAME 
= #objList[].name#
                
AND ( TARGET IN 
                
<iterate property="objList[].objList" open="(" close=")" conjunction=",">
                    #objList
[].objList[].target#
                
</iterate> ) )
            
</iterate> 
            
AND DEL_FLG = '0'
    
</select>

因为某种需求,尝试了上面的iBatis的SQLMAP,而且也通过测试了。
但是,这只是理论上的可行性是通过的。
实际应用的时候,由于数据量的增大,上面的SQL文解析以后也会
变的超大。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值