mybatis执行批量更新batch update 的方法

来源:互联网 发布:python入门教程第三版 编辑:程序博客网 时间:2024/05/22 09:05

1、数据库连接必须配置:&allowMultiQueries=true

  我的配置如下:jdbc:mysql://10.20.13.16:3306/CALENDAR?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true

2、批量修改并加判断条件(修改字段可选)

复制代码
    <!-- 批量更新赛程 -->    <update id="updateMatchs" parameterType="java.util.List">        <foreach collection="matchs" item="item" index="index" open="" close="" separator=";">            update t_match            <set>                <if test="item.title !=null">                    TITLE = #{item.title,jdbcType=VARCHAR},                </if>                <if test="item.homeScore !=null">                    HOME_SCORE = #{item.homeScore,jdbcType=INTEGER},                </if>                <if test="item.visitScore !=null">                    VISTT_SCORE = #{item.visitScore,jdbcType=INTEGER},                </if>                <if test="item.liveSource !=null">                    LIVE_SOURCE = #{item.liveSource,jdbcType=VARCHAR},                </if>                <if test="item.liveURL !=null">                    LIVE_URL = #{item.liveURL,jdbcType=VARCHAR},                </if>                <if test="item.isHotMatch !=null">                    IS_HOT_MATCH = #{item.isHotMatch,jdbcType=VARCHAR}                </if>            </set>        where HOME_TEAM_ID = #{item.homeTeamId,jdbcType=VARCHAR} and        VISIT_TEAM_ID = #{item.visitTeamId,jdbcType=VARCHAR} and        MATCH_TIME = #{item.matchTime,jdbcType=BIGINT}        </foreach>    </update>
复制代码

java接口

复制代码
    /**     * 批量修改赛程     *      * @param matchs     * @throws DaoException     */    void updateMatchs(@Param(value = "matchs")List<MatchBasic> matchs);
复制代码
阅读全文
0 0