美文网首页
Mybatis插入数据返回主键id

Mybatis插入数据返回主键id

作者: _灯火阑珊处 | 来源:发表于2019-08-01 14:45 被阅读0次

实体类

public class AddServiceDTO {

    private Integer serviceId;

    /**
     * 存放返回的服务主键id
     */
    private Integer servicePrimaryId;
}

接口

int submitForService(@Param("param") AddServiceReviewDTO param);

如果这个接口使用了@Param注解,那么在mybatis中keyProperty则要加上param才能获取到返回的主键id

    <insert id="submitForService" parameterType="com.trademark.admin.dto.AddServiceDTO"
            useGeneratedKeys="true" keyProperty="param.servicePrimaryId">
        INSERT INTO service
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="param.serviceId != null">
                service_id,
            </if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="param.serviceId != null">
                #{param.serviceId,jdbcType=INTEGER},
            </if>
        </trim>
    </insert>

keyProperty为AddServiceDTO中定义的用于接收主键id的servicePrimaryId,不是数据库中的列名

相关文章

网友评论

      本文标题:Mybatis插入数据返回主键id

      本文链接:https://www.haomeiwen.com/subject/gzwqdctx.html