数据库添加数据返回主键id


在mysql中插入一条数据后,返回该条数据的id ,假如之后代码需要这个id,内容如下:

<insert id="saveUser" useGeneratedKeys="true" keyProperty="userId" parameterType="User">

    insert into user(name,password,age) values(#{name},#{password},#{age})

</insert> 
测试代码如下:
User user = new User();

user.setName("张三");
user.setPassword("123456");

System.out.println("插入数据前主键为:"+user.getUserId());   //输出结果null //调用方法
userDao.saveUser(user);
System.out.println("插入数据后主键为:"+user.getUserId());    //输出结果是插入数据新增的id: 21
注意:useGeneratedKeys默认值是:false。 
含义:设置是否使用JDBC的getGenereatedKeys方法获取主键并赋值到keyProperty设置的领域模型属性中。

如果使用的是mybatis-plus,则使用自带插入方法插入,然后根据对应的领域模型获取主键id即可。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM