java中的批量导入,批量更新数据


批量插入 数据,提高效率

 

Dao层

int insertBatch(List<HealthImport> list);

 

xml文件

<insert id="insertBatch" parameterType="java.util.List" >
    insert into health_import
    (answer_id, sample_num, `name`,
    sex, age, select_goal,
    pro_id, pro_name, select_result,
    sample, patient_id, barcode,
    reviewer, idcard, refer_range,
    unit, create_time, `result`,
    flag, message)
    values
    <foreach collection="list" index="index" item="monitor" separator=",">
      (#{monitor.answerId,jdbcType=INTEGER}, #{monitor.sampleNum,jdbcType=VARCHAR}, #{monitor.name,jdbcType=VARCHAR},
      #{monitor.sex,jdbcType=VARCHAR}, #{monitor.age,jdbcType=VARCHAR}, #{monitor.selectGoal,jdbcType=VARCHAR},
      #{monitor.proId,jdbcType=VARCHAR}, #{monitor.proName,jdbcType=VARCHAR}, #{monitor.selectResult,jdbcType=VARCHAR},
      #{monitor.sample,jdbcType=VARCHAR}, #{monitor.patientId,jdbcType=VARCHAR}, #{monitor.barcode,jdbcType=VARCHAR},
      #{monitor.reviewer,jdbcType=VARCHAR}, #{monitor.idcard,jdbcType=VARCHAR}, #{monitor.referRange,jdbcType=VARCHAR},
      #{monitor.unit,jdbcType=VARCHAR}, #{monitor.createTime,jdbcType=TIMESTAMP}, #{monitor.result,jdbcType=INTEGER},
      #{monitor.flag,jdbcType=INTEGER}, #{monitor.message,jdbcType=VARCHAR})
    </foreach>
  </insert>

  

 

批量 更新数据 提高效率

Dao层

int updateBatch(List<HealthImport> list);

  

xml文件

<update id="updateBatch" parameterType="java.util.List" >
    <foreach collection="list" item="item" index="index" open="" close="" separator=";">
      update health_import
      <set>
        <if test="item.answerId != null">
          answer_id = #{item.answerId,jdbcType=INTEGER},
        </if>
        <if test="item.sampleNum != null">
          sample_num = #{item.sampleNum,jdbcType=VARCHAR},
        </if>
        <if test="item.name != null">
          `name` = #{item.name,jdbcType=VARCHAR},
        </if>
        <if test="item.sex != null">
          sex = #{item.sex,jdbcType=VARCHAR},
        </if>
        <if test="item.age != null">
          age = #{item.age,jdbcType=VARCHAR},
        </if>
        <if test="item.selectGoal != null">
          select_goal = #{item.selectGoal,jdbcType=VARCHAR},
        </if>
        <if test="item.proId != null">
          pro_id = #{item.proId,jdbcType=VARCHAR},
        </if>
        <if test="item.proName != null">
          pro_name = #{item.proName,jdbcType=VARCHAR},
        </if>
        <if test="item.selectResult != null">
          select_result = #{item.selectResult,jdbcType=VARCHAR},
        </if>
        <if test="item.sample != null">
          sample = #{item.sample,jdbcType=VARCHAR},
        </if>
        <if test="item.patientId != null">
          patient_id = #{item.patientId,jdbcType=VARCHAR},
        </if>
        <if test="item.barcode != null">
          barcode = #{item.barcode,jdbcType=VARCHAR},
        </if>
        <if test="item.reviewer != null">
          reviewer = #{item.reviewer,jdbcType=VARCHAR},
        </if>
        <if test="item.idcard != null">
          idCard = #{item.idcard,jdbcType=VARCHAR},
        </if>
        <if test="item.referRange != null">
          refer_range = #{item.referRange,jdbcType=VARCHAR},
        </if>
        <if test="item.unit != null">
          unit = #{item.unit,jdbcType=VARCHAR},
        </if>
        <if test="item.createTime != null">
          create_time = #{item.createTime,jdbcType=TIMESTAMP},
        </if>
        <if test="item.result != null">
          `result` = #{item.result,jdbcType=INTEGER},
        </if>
        <if test="item.flag != null">
          flag = #{item.flag,jdbcType=INTEGER},
        </if>
        <if test="item.message != null">
          message = #{item.message,jdbcType=INTEGER}
        </if>
      </set>
      where pro_id = #{item.proId,jdbcType=VARCHAR} and  sample_num = #{item.sampleNum,jdbcType=VARCHAR}
    </foreach>
  </update>

  

 

 

 

原创文章,作者:,如若转载,请注明出处:https://blog.ytso.com/tech/java/275359.html

(0)
上一篇 2022年7月19日 12:57
下一篇 2022年7月19日 13:02

相关推荐

发表回复

登录后才能评论