mybatis insert返回自增主键的id值
前期准备
mapper
int insert(MeasureDictEntity record);
service
AjaxResult insertMeasure(MeasureDictEntity measureDictEntity);
impl
@Override
public AjaxResult insertMeasure(MeasureDictEntity measureDictEntity) {
int insert = measureDictEntityMapper.insert(measureDictEntity);
return ReturnUtils.getInsert(insert);
}
最重要的 mapper.xml
<insert id="insert" useGeneratedKeys="true" keyProperty="id" keyColumn="id"
parameterType="com.aima.project.information.domain.MeasureDictEntity">
insert into measure_dict (id, number, ch_name, en_name)
values (#{id,jdbcType=INTEGER}, #{number,jdbcType=VARCHAR}, #{chName,jdbcType=VARCHAR},
#{enName,jdbcType=VARCHAR})
</insert>
这里一定加上这个,不加上是不会好使的
useGeneratedKeys="true" keyProperty="id" keyColumn="id"
新增前效果
新增后效果
这里需要注意的是:
新增前主键id是没有值的,只有你要保存的数据
新增后是会把主键id的值返回到那个实体的id中,之后再看是会发现id中有数据了
——来自java小白,亲测可以使用,如果有不懂的可以问,杜绝不经试验就发布的无用博客