iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > JAVA >使用mybatis新增一条数据返回新增数据的id
  • 901
分享到

使用mybatis新增一条数据返回新增数据的id

javaidea后端数据库开发语言Poweredby金山文档 2023-09-20 12:09:25 901人浏览 八月长安
摘要

第一种方法 insert into user(userName,passWord) values(#{userName},#{password}) 注意事项: useGeneratedKeys="true" 表示给主键设

第一种方法

    insert into user(userName,passWord)    values(#{userName},#{password})

注意事项:

useGeneratedKeys="true" 表示给主键设置自增长,keyProperty="userId" 表示将自增长后的Id赋值给实体类中的userId字段。

parameterType="com.icc.domain.User" 这个属性指向传递的参数实体类

这里提醒下, 中没有resultType属性,不要乱加。

实体类中uerId 要有getter() and setter(); 方法

第二种方式:

                     SELECT LAST_INSERT_ID()              INSERT INTO t_product(productName,productDesrcible,merchantId)values(#{productName},#{productDesrcible},#{merchantId});

注意事项:

中没有resultType属性,但是 标签是有的。

order="AFTER" 表示先执行插入语句,之后再执行查询语句。

可被设置为 BEFORE 或 AFTER。

如果设置为 BEFORE,那么它会首先选择主键,设置 keyProperty 它会在插入语句前执行。

如果设置为 AFTER,那么插入语句执行后执行。

keyProperty="userId" 表示将自增长后的Id赋值给实体类中的userId字段。

SELECT LAST_INSERT_ID() 表示Mysql语法中查询出刚刚插入的记录自增长Id.

实体类中uerId 要有getter() and setter(); 方法

取出方式

mybatis 执行完插入语句后,自动将自增长值赋值给对象 ProductBean 的属性id。因此,可通过 systemBean 对应的 getter 方法获取!

int count = systemService.insert(productBean);            int id = productBean.getproductId(); //获取到的即为新插入记录的ID 

如果是使用如下序列.nextval来设置id则可以直接通过实体类的get方法获取

                    select seq_sys_dept.nextval as deptId from DUAL                 insert into sys_dept(             dept_id,             dept_name,             leader                   )values(             #{deptId},             #{deptName},             #{leader}                 )    
deptMapper.insertDept(dept);        System.out.println("==============================="+dept.getDeptId());

来源地址:https://blog.csdn.net/weixin_55823910/article/details/129532516

--结束END--

本文标题: 使用mybatis新增一条数据返回新增数据的id

本文链接: https://www.lsjlt.com/news/412853.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作