Hibernate及MyBatis获取数据库新插入记录主键id

记录一下Hibernate以及MyBatis往数据库插入一条新纪录,获取这条新纪录的id的方法。

1.Hibernate

HIbernate插入数据时执行save()方法,执行完该方法之后,实体类对象就已经有了在数据库中的id值,调用getId方法就可以获取id,简单示例如下:

Person person = new Person();
//给person赋值
//...
personDao.save(person);//执行save()方法
int id = person.getId();

2.MyBatis

说明:这里在数据库中的主键id必须是自增主键

在personMapper.xml文件insert语句中添加 useGeneratedKeys="true" 属性与 keyProperty=" id" 属性

<insert id="addPerson" parameterType="Person" useGeneratedKeys="true" keyProperty="id">
        insert into person(name, age) values (#{name}, #{age})
 </insert>

简单调用示例:

Person person = new Person();
//给person赋值
//...
personMapper.addPerson(person);//执行insert方法
int id = person.getId();

参考链接:
1.https://blog.csdn.net/codejas/article/details/79513834

2.https://blog.csdn.net/Applying/article/details/80560124

猜你喜欢

转载自blog.csdn.net/Dan_One/article/details/84314024