MyBatis获取数据库自生成的主键Id详解及实例代码

 更新时间:2017年05月04日 17:03:40   投稿:lqh  
这篇文章主要介绍了MyBatis获取数据库自生成的主键Id详解及实例代码的相关资料,需要的朋友可以参考下

MyBatis获取数据库自生成的主键Id详解及实例代码

在使用MySQL数据库时我们一般使用数据库的自增主键自动产生主键。如果在插入主表时,我们需要同时插入从表的数据,这时我们通常需要知道主表插入时自动产生的主键Id值。

下面介绍使用MyBatis进行插入时,如何同时获取数据库自生成的主键:

1、XML配置文件

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

2、Mapper中的方法

int insert(Person person);

注意在调用这个方法时,返回的int值并不是主键,而是插入的记录数。主键id会被赋值到输入的person对象里,自动赋值给person对象的id属性。比如:

Person person = new Person("name","psw");
//num是插入的记录数
int num = PersonMapper.insert(person);
//person对象的id属性会变成自生成的id
int id = person.getId();

 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • 如何查看Navicat加密的数据库密码

    如何查看Navicat加密的数据库密码

    本机装的MySQL数据库密码忘记了,打开了Navicat连接过数据库,不过密码是加密的,怎么办呢?今天小编给大家分享如何查看Navicat加密的数据库密码,感兴趣的朋友一起看看吧
    2023-04-04
  • 一个提升PostgreSQL性能的小技巧

    一个提升PostgreSQL性能的小技巧

    这篇文章主要介绍了一个提升Postgres性能的小技巧,通过修改很少的代码来优化查询,需要的朋友可以参考下
    2015-04-04
  • Apache Doris Colocate Join 原理实践教程

    Apache Doris Colocate Join 原理实践教程

    这篇文章主要为大家介绍了Apache Doris Colocate Join 原理实践教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • Navicat15激活使用教程

    Navicat15激活使用教程

    navicat15激活工具是一款针对同名软件所推出的激活码注册生成器,接下来通过本文给大家介绍Navicat15激活使用教程,需要的朋友可以参考下
    2021-10-10
  • 一篇文章带你了解数据库中JOIN的用法

    一篇文章带你了解数据库中JOIN的用法

    这篇文章主要给大家介绍了关于数据库中JOIN的用法,文中通过示例代码介绍的非常详细,对大家学习或者使用数据库具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-04-04
  • Windows10用Navicat 定时备份报错80070057的问题解析

    Windows10用Navicat 定时备份报错80070057的问题解析

    这篇文章主要介绍了Windows10用Navicat 定时备份报错80070057的问题,本文通过图文并茂的形式给大家分享问题所在原因及解决方案,需要的朋友可以参考下
    2023-10-10
  • SQLServer中exists和except用法介绍

    SQLServer中exists和except用法介绍

    大家好,本篇文章主要讲的是SQLServer中exists和except用法介绍,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下哦
    2021-12-12
  • sqlmap之os shell图文详细解析

    sqlmap之os shell图文详细解析

    在面那些出名的安全厂商时,面试官很喜欢问os-shell相关的原理,下面这篇文章主要给大家介绍了关于sqlmap之os shell图文详细解析的相关资料,需要的朋友可以参考下
    2023-03-03
  • Win2003系统安装SQL Server2000后1433端口未开放的解释

    Win2003系统安装SQL Server2000后1433端口未开放的解释

    这篇文章主要介绍了Win2003系统安装SQL Server2000后1433端口未开放的解释
    2007-02-02
  • 数据库分页查询语句数据库查询

    数据库分页查询语句数据库查询

    关于分页 SQL 的资料许多,有的使用存储过程,有的使用游标。本人不喜欢使用游标,我觉得它耗资、效率低;使用存储过程是个不错的选择,因为存储过程是颠末预编译的,执行效率高,也更灵活
    2014-08-08

最新评论