mysql添加数据的同时返回自增主键id

方法一(实测可用):

<insert id="add" useGeneratedKeys="true" keyProperty="id" parameterType="com.zhengfeng.health.pojo.Order">
        insert into t_order (id, member_id, orderDate, orderType, orderStatus, setmeal_id)
        VALUES(null, #{memberId}, #{orderDate}, #{orderType}, #{orderStatus}, #{setmealId})
</insert>

修改完成之后,我们添加的数据Order类型的order对象中的id就已经填充好了,如果要用的话直接用get方法获取即可。

方法二(未测):

<insert id="insert" parameterType="com.zhengfeng.health.pojo.Setmeal">

    <selectKey resultType="integer" order="AFTER" keyProperty="id">
        select LAST_INSERT_ID()
    </selectKey>

    INSERT INTO 
    t_setmeal (id, name, code, helpCode, sex, age, price, remark)
    VALUES 
    (#{id}, #{name}, #{code}, #{helpCode},#{sex},#{age},#{price},#{remark});

</insert>

SelectKey需要注意order属性,像Mysql一类支持自动增长类型的数据库中,order需要设置为after才会取到正确的值。

上一篇:avue是什么


下一篇:Java的封装学习