众所周知,我们新增时返回的int类型是并不是ID,而是判断是否新增成功的条数。那么我们想要新增成功返回主键ID,该怎么写呢!
我们可以在写sql中的mapper.xml文件中添加useGeneratedKeys=”true” keyProperty=”id”属性。
含义:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。
useGeneratedKeys取值范围true|false 默认值是false。 而keyProperty是Java对象的属性名。废话不多说上图。
XML页面
可以看到,这里的keyProperty里的id是模型里自己的id。
当执行插入时,传入一个实体,在执行完毕之后,使用通过get的方式来获取到新增返回的id。
Service实现类中
可以看到这里有两个int值,第一个新增返回成功条数,而第二个就是我们刚刚新增返回的新增id了。
这只是方法之一,其实还有另一种方法,不管怎么样实现了就可以了