mybatis 插入返回id_MyBatis插入操作获取不到返回的自增id问题

208c65f4ac2373c8165e13fae9bae64f.png
我们都知道当MyBatis结合MySQL操作的时候,insert data的时候,是可以配置mapper直接返自增主键的

例如

Dao层

Info insertInfo(@Param("info") Info info);

mapper

<insert id="insertInfo" parameterType="org.andot.Info" useGeneratedKeys="true" keyProperty="id" keyColumn="id">
</insert>

这样我们在service调用dao的时候,调用成功之后,在Info.getId()就可以获取自增主键当前自增值了

但是我现在遇到问题是我是这个做的,怎么也获取不到, 我还查询资料,看是不是写错了,然而并没有

最终,发现一个问题,原来MyBatis 在dao接口函数上加入@Param参数注解的时候,实体类定义了一个别名,这样相当于原来直接用id是找不到了,需要加入别名 在keyProperty="id" 改为 keyProperty="info.id"

这样就可以获取到了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值