mybatis 参数是集合

 @Select("<script>" +
            "delete from parking_img where PARKING_ID in" +
            "<foreach collection=\"parkingIds\" open=\"(\" separator=\",\" close=\")\" item=\"parkingId\"> #{parkingId} </foreach>" +
            "</script>")

注意:要用script标签

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MyBatis 中,查询传集合参数可以使用以下两种方式: 1. 使用 foreach 标签 使用 foreach 标签可以遍历集合参数中的每个元素,将元素的值赋给 SQL 语句中的参数。例如,我们可以使用如下的 SQL 语句查询多个用户的信息: ``` <select id="getUserList" resultType="User"> SELECT * FROM user WHERE id IN <foreach collection="ids" item="id" open="(" separator="," close=")"> #{id} </foreach> </select> ``` 在上述 SQL 语句中,我们使用了 foreach 标签对集合参数 ids 进行了遍历,将遍历得到的元素 id 的值赋给了 SQL 语句中的参数 #{id}。其中,open、separator、close 属性分别指定了 SQL 语句中的括号、分隔符等。 在 Java 代码中,我们可以将集合参数 ids 以 List 或者数组的形式传递给 MyBatis: ``` List<Integer> ids = Arrays.asList(1, 2, 3); List<User> userList = sqlSession.selectList("getUserList", ids); ``` 在上述 Java 代码中,我们将 ids 以 List 的形式传递给 MyBatisMyBatis 会自动使用 foreach 标签将集合参数中的元素传递给 SQL 语句中的参数。 2. 使用 @Param 注解 另一种方式是使用 @Param 注解指定集合参数的名称,然后在 SQL 语句中直接使用该名称。例如,我们可以使用如下的 SQL 语句查询多个用户的信息: ``` <select id="getUserList" resultType="User"> SELECT * FROM user WHERE id IN <foreach collection="ids" item="id" open="(" separator="," close=")"> #{id} </foreach> </select> ``` 在 Java 代码中,我们可以使用 @Param 注解指定集合参数的名称为 ids: ``` List<Integer> ids = Arrays.asList(1, 2, 3); List<User> userList = sqlSession.selectList("getUserList", @Param("ids") ids); ``` 在上述 Java 代码中,我们使用 @Param 注解指定了集合参数的名称为 ids,然后将 ids 以 List 的形式传递给 MyBatisMyBatis 会自动将集合参数传递给 SQL 语句中的参数,从而实现查询传集合参数的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值