插入信息之后是拿不到用户id的,如果想要拿到用户的主键id,需要用手机号或者其他唯一数据再查询一遍
今天发现了MyBatis一个特别神奇的东西。
useGeneratedKeys="true" keyProperty="对应的主键的对象"。
useGeneratedKeys ,这个参数只针对 insert 语句生效,默认是 false。
当设置为 true 时,表示插入的表以自增列为主键,并可将自动生成的主键返回。
而keyProperty,就是java对象之中对应用户主键的属性名。
<insert id="insert" parameterType="com.kj.model.user.Customer" useGeneratedKeys="true" keyProperty="customerId">
insert into customer( <include refid="table_columns" /> )
values ( <include refid="entity_properties" /> )
</insert>
这段代码中,传入的参数是Customer对象,然后把自增主键id映射到对象属性customerId里,
当你执行完插入这个操作折后,用户的主键id就已经映射进传入的Customer对象里面的customerId了
然后就可以愉快的使用用户id了