mybatis 用map循环插入数据

用map循环插入数据,比如保存数据到一个中间表里

  • 语句:

      
    <insert id="addEventBeforeAnnexe" parameterType="map">
      INSERT INTO evt_event_before_annexe
      (event_id, annexe_id)
      VALUES
      <foreach collection="annexeIds" item="aid" separator=",">
        (#{eventId}, #{aid})
      foreach>
    insert>
    
  • DAO层

    /**
    * 新增案件处理前附件关联关系
    * @param eventBeforeAnnexe 案件处理前附件关联关系
    * @author dyc
    * date: 2019/9/20 9:29
    */
   void addEventBeforeAnnexe(Map<String, Object> eventBeforeAnnexe);
  • service层调用
         //保存案件附件关联关系
           if (!StringUtil.isInvalid(param.getEventPicBeforeIds())) {
               List<String> annexeIds = StringUtil.getList(param.getEventPicBeforeIds());
               Map<String, Object> eventBeforeAnnexe = new HashMap<>();
               eventBeforeAnnexe.put("eventId", param.getEvent().getId());
               eventBeforeAnnexe.put("annexeIds", annexeIds);
               eventDAO.addEventBeforeAnnexe(eventBeforeAnnexe);
           }

你可能感兴趣的:(Mybatis)