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>