MyBatis执行insert如何返回主键

当我们在用Mysql数据库时,主键可以被设置为自动增长,因此,在构建待插入的实体类时就无需对其设置主键。

当插入成功后,如果需要将数据库自动生成的主键填充到实体类中的话,可以采用下面的方法

使用 useGeneratedKeys="true" keyProperty="userId",这时,执行完insert语句后,Mybatis会对userId进行自动填充。

    <resultMap id="userResultMap" type="User" >
        <id property="userId" column="user_id" />
        <result property="username" column="username" />
        <result property="password" column="password" />
        <result property="email" column="email" />
        <result property="dempNo" column="demp_no" />
    </resultMap>
    <sql id="userColumns">(username,password,email,demp_no)</sql>
    <insert id="insertUser" useGeneratedKeys="true" keyProperty="userId">
        insert into user <include refid="userColumns"/> values (#{username},#{password},#{email},#{dempNo})
    </insert>

 

posted on 2013-10-03 11:42  玲珑go  阅读(977)  评论(0编辑  收藏  举报

导航