MyBatis 新增数据 成功 返回 自增主键ID值

实现:自增ID值将返回到 Commodity(对应 parameterType="com.ljw.po.Commodity") 新增对象的 commodityId(对于 keyProperty="commodityId") 字段

 

方式一 :添加 useGeneratedKeys="true" keyProperty="commodityId" 

  <insert id="insertSelective" parameterType="com.ljw.po.Commodity" useGeneratedKeys="true" keyProperty="commodityId">
    insert into commodity
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="commodityCategoryId != null">
        commodity_category_id,
      </if>
      <if test="commodityName != null">
        commodity_name,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="commodityCategoryId != null">
        #{commodityCategoryId,jdbcType=INTEGER},
      </if>
      <if test="commodityName != null">
        #{commodityName,jdbcType=VARCHAR},
      </if>
    </trim>
  </insert>

方式二 :查询最后自增ID映射到 commodityId 列

<insert id="insertSelective" parameterType="com.ljw.po.Commodity">
    insert into commodity
    <trim prefix="(" suffix=")" suffixOverrides=",">
      <if test="commodityCategoryId != null">
        commodity_category_id,
      </if>
      <if test="commodityName != null">
        commodity_name,
      </if>
    </trim>
    <trim prefix="values (" suffix=")" suffixOverrides=",">
      <if test="commodityCategoryId != null">
        #{commodityCategoryId,jdbcType=INTEGER},
      </if>
      <if test="commodityName != null">
        #{commodityName,jdbcType=VARCHAR},
      </if>
    </trim>
    <!-- 关键代码 -->
    <selectKey keyProperty="commodityId" resultType="java.lang.Integer">
      select LAST_INSERT_ID() as commodityId
     </selectKey>
  </insert>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值