Mybatis+mysql主键自增长,插入语句返回主键id
#(一)SQL语句获取主键自增长的id
<insert id="addGoods" parameterType="com.wlmall.shop.domain.Goods">
<-/ 通过此语句获取主键id,我的id是Long类型keyProperty中写主键列的字段名称,执行之后要插入的类id就会自动赋值->
<selectKey resultType="java.lang.Long" order="AFTER" keyProperty="id">
SELECT LAST_INSERT_ID() AS id
</selectKey>
<-这里写插入语句,平时怎么写,这里怎么写就可以了->
insert into shop_goods
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="id != null ">id,</if>
<if test="shopId != null ">shop_id,</if>
<if test="categoryId != null ">category_id,</if>
<if test="barcode != null and barcode != '' ">barcode,</if>
<if test="videoId != null ">video_id,</if>
<if test="name != null and name != '' ">name,</if>
<if test="characteristic != null and characteristic != '' ">characteristic,</if>
<if test="logisticsId != null ">logistics_id,</if>
<if test="paixu != null ">paixu,</if>
<if test="recommendStatus != null ">recommend_status,</if>
<if test="status != null ">status,</if>
<if test="content != null and content != '' ">content,</if>
<if test="originalPrice != null ">original_price,</if>
<if test="minPrice != null ">min_price,</if>
<if test="pintuanPrice != null ">pintuan_price,</if>
<if test="minScore != null ">min_score,</if>
<if test="stores != null ">stores,</if>
<if test="weight != null ">weight,</if>
<if test="commissionType != null ">commission_type,</if>
<if test="commission != null ">commission,</if>
<if test="pingtuan != null ">pingtuan,</if>
<if test="dateStart != null ">date_start,</if>
<if test="dateEnd != null ">date_end,</if>
<if test="addUser != null and addUser != '' ">add_user,</if>
<if test="addDate != null ">add_date,</if>
<if test="updateUser != null and updateUser != '' ">update_user,</if>
<if test="updateTime != null ">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="id != null ">#{id},</if>
<if test="shopId != null ">#{shopId},</if>
<if test="categoryId != null ">#{categoryId},</if>
<if test="barcode != null and barcode != '' ">#{barcode},</if>
<if test="videoId != null ">#{videoId},</if>
<if test="name != null and name != '' ">#{name},</if>
<if test="characteristic != null and characteristic != '' ">#{characteristic},</if>
<if test="logisticsId != null ">#{logisticsId},</if>
<if test="paixu != null ">#{paixu},</if>
<if test="recommendStatus != null ">#{recommendStatus},</if>
<if test="status != null ">#{status},</if>
<if test="content != null and content != '' ">#{content},</if>
<if test="originalPrice != null ">#{originalPrice},</if>
<if test="minPrice != null ">#{minPrice},</if>
<if test="pintuanPrice != null ">#{pintuanPrice},</if>
<if test="minScore != null ">#{minScore},</if>
<if test="stores != null ">#{stores},</if>
<if test="weight != null ">#{weight},</if>
<if test="commissionType != null ">#{commissionType},</if>
<if test="commission != null ">#{commission},</if>
<if test="pingtuan != null ">#{pingtuan},</if>
<if test="dateStart != null ">#{dateStart},</if>
<if test="dateEnd != null ">#{dateEnd},</if>
<if test="addUser != null and addUser != '' ">#{addUser},</if>
<if test="addDate != null ">#{addDate},</if>
<if test="updateUser != null and updateUser != '' ">#{updateUser},</if>
<if test="updateTime != null ">#{updateTime},</if>
</trim>
</insert>
#(二)service层取出id返回
public Long addGoods(Goods goods) {
//调用Mapper执行第一步的插入语句
goodsMapper.addGoods(goods);
//通过类的get方法获取返回的id值
Long id=goods.getId();
return id;
}