MyBatis动态sql小结(三)

1.foreach 实现in集合

foreach包含以下属性:

collection:必填,值为要迭代循环属性,这个属性值的情况有很多。

item:变量名,值为从迭代对象中取出的每一个值。

index:索引的属性名,在集合数组情况下为当前的索引值,当迭代循环的对象是map类型时,这个值为Map的Key(键值)。

open:整个循环内容开头的字符串。

close:整个循环体结束的字符串。

separator:每次循环的分隔符。

其中collection属性要怎么设置呢?

1.1只有一个数组参数或者集合参数

当为数值时,collection = "array".

当为集合时,collection = "list".

推荐使用@param来指定参数的名字。

1.2有多个参数时

使用@param指定参数的名字

1.3参数为Map类型时

将collection指定为对应Map中的Key即可,如果要循环所传入的Map,推荐使用@param注解指定名字,此时可将collection设置为指定名字。


2.foreach实现批量插入


3.foreach 实现动态update


   
   
    
    
  			update sys_user
  			set
  			
    
    
     
     
  				${key} = #{val}
  			
    
    
  			where id = #{id}
  		
   
   




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值