关于如何在mysql中插入一条数据后,返回这条数据的id
简单的总结一下如何在mysql中出入一条数据后,返回该条数据的id ,假如之后代码需要这个id,这样做起来就变得非常方便,内容如下:
<insert id="insertAndGetId" useGeneratedKeys="true" keyProperty="userId" parameterType="User">
insert into user(userName,password,comment) values(#{userName},#{password},#{comment})
</insert>
在这里:
useGeneratedKeys 取值范围true|false 默认值是:false。 含义:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。
之后写一个测试代码如下:
User user = new User();
user.setUserName("哈哈");
user.setPassword("ff");
System.out.println("插入前主键为:"+user.getUserId());
userDao.insert(user);//插入操作
System.out.println("插入后主键为:"+user.getUserId());
插入前主键为:0
插入后主键为:15
如上所示,刚刚插入的记录主键id为15