mybatis用mysql数据库自增主键,插入一条记录返回新增记录的自增主键ID

时间:2022-01-03 00:03:14

今天在敲代码的时候遇到一个问题,就是往数据库里插入一条记录后需要返回这个新增记录的ID(自增主键),

公司框架用的是mybatis的通用Mapper接口,里面的插入方法貌似是不能把新纪录的ID回填到对象中的,于是大家都懂的

去网络的海洋里寻找答案,答案还是很好找的

<insert id="xxx" parameterType="xxx.xxx.xxx.entity" useGeneratedKeys="true" keyColumn="guid" keyProperty="entity.guid">(这是我自己的代码)
在网上找到的是
<insert id="xxx" parameterType="xxx.xxx.xxx.entity" useGeneratedKeys="true" keyColumn="guid" keyProperty="guid"> 这个样子的,
然后程序会报一个错,大概意思就是找不到"guid"这个东西,可以用的参数是"entity",
Integer xxx(@Param("entity") Entity entity);
于是把
<insert id="xxx" parameterType="xxx.xxx.xxx.entity" useGeneratedKeys="true" keyColumn="guid" keyProperty="guid">
改为
<insert id="xxx" parameterType="xxx.xxx.xxx.entity" useGeneratedKeys="true" keyColumn="guid" keyProperty="entity.guid">
然后就成功了