mybatis3通过注解provider进行动态sql

本文介绍了如何在Mybatis中使用注解配合Provider进行动态SQL操作,以批量删除和模糊查询为例,展示了如何避免XML标签,通过Java实现动态SQL。提到了InsertProvider、DeleteProvider、UpdateProvider和SelectProvider四个注解及其用法。

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

Mybatis基于注解方式实现CRUD(增删查改)操作,相较于传统的XML方式,能有效地简化代码,并更有利于代码维护,且可读性更高!

一般使用注解实现简单的SQL进行增删查改是十分方便的,但是如果需要动态绑定参数,就需要结合xml的标签嵌入。

 

如批量删除

// @Delete("DELETE FROM s_userspacedetail where userSpaceDetailId in (#{strID})") 该方法只能删除一个
@Delete("<script>"+
"DELETE FROM s_userspacedetail where userSpaceDetailId in " +
    "<foreach collection='arrID' item='id' open='(' separator=','    close=')'>#{id}</foreach> "+
  "</script>")
  int delectByUserSpaceDetailId(@Param("arrID")int[]  arrID);

 

如模糊查询

@Select("<script>"+
      "SELECT mr.CreatDate CreatDate,mr.IsNoFavorite IsNoFavorite,mr.UserSpaceID UserSpaceID, up.FileSize fileSize, " +
      " mr.MusicRecordID MusicRecordID, mr.IsNoTemp IsNoTemp, up.FileMD5 FileMD5, up.FileName FileName,up.FileUrl FileUrl "+
       " FROM r_musicrecord mr,r_use

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值