当前位置: 首页 > 知识库问答 >
问题:

如何在mybatis中为映射器接口中的更新查询编写foreach循环

武元白
2023-03-14

我使用mybatis在映射器接口中有一个更新查询

 final String UPDATE ="update table_addresses "
                            + "set postCode= #{postCode}"
                            + "where id in"
                            + "<foreach item='item' index='index' 
                               collection='addressId' "
                            + "open='(' separator=',' close=')'>  #{item} 
                 </foreach>";
@Update(UPDATE)
public int updateInformation(@Param("postCode") String postCode , 
@Param("addressId") List<AddressID> addressId);
AddressId {
private int addressId;
} 

共有1个答案

左丘宜年
2023-03-14

对于复杂的sql状态。我更喜欢使用SelectBuilder/UpdateBuilder

请参见本页的最后一部分mybatis-java-api

 类似资料:
  • 在mapper中,我调用了一个proc'xyz',它返回所查询的ProcessType表的行列表的光标。

  • 我在数据表和通过data_user表链接的用户表之间有一个Hibernate ManyToMany映射。现在我想更新数据表,以便在数据中再添加一个用户。如何更新链接表(data_user)为新用户添加一个条目? NonUniqueObjectException:一个具有相同标识符值的不同对象已经与会话相关联。 PS:我对冬眠很陌生。

  • 这是我得到的,我想按条目中的值降序排序。 如何用排序编写比较器。如果想在排序后执行以下操作 在得到列表并排序后,它对我有效。 但是有没有办法在条目内使用stream.sorted(“在这里使用相同的比较器逻辑”)。 Entry是一个数组列表,有一堆值。 所以我想对此进行反向排序,如下所示: 所以我得到的最终列表是按相反顺序排序的。 为混乱而哭泣。

  • 如何编写java。util。映射到avro?在GenericData中,我看到了记录等的条目,但没有看到映射的条目。同样的问题也存在http://apache-avro.679487.n3.nabble.com/How-to-write-an-AVRO-map-Something-like-GenericData-Map-td3407527.html,但我不知道到底是怎么做到的。

  • 本文向大家介绍MyBatis中多对多关系的映射和查询,包括了MyBatis中多对多关系的映射和查询的使用技巧和注意事项,需要的朋友参考一下 先说一下需求:  在页面上显示数据库中的所有图书,显示图书的同时,显示出该图书所属的类别(这里一本书可能同时属于多个类别) 创建表:  笔者这里使用中间表连接图书表和图书类别表,图书表中没有使用外键关联图书类别表  而是在中间表中引用了图书主键和类别主键  通