Mybatis实现insert获取自增id
先说明我用的是MySQL,其他的没使用过,也帮不上了~~
首先要先解决思维误区吧,我在搜索了一些资料之后以为写一个这样的xml
<insert id="insertNoticeMessage" parameterType="BaseNoticeMessage" useGeneratedKeys="true" keyProperty="msgId" keyColumn="msgid">
insert就会返回我自增id值,本项目对应这msgid,然而一直返回1。
insert返回的只是insert方法的情况 1成功 0失败
所以自增id只能返回给你insert的类中,自然你insert类需要有一个对应的属性最好~我这里就是msgId
使用方法如下
int res = BaseNoticeMessageDAO.insert(baseNoticeMsg);
int msgId = baseNoticeMsg.getMsgId();
msgId就是你希望得到的自增id
res只是insert的结果
当然上面的xml还可以这么写
<insert id="insertNoticeMessage" parameterType="BaseNoticeMessage"><selectKey order="AFTER" keyProperty="msgId" resultType="int">SELECT LAST_INSERT_ID()</selectKey>INSERT INTO noticemessage(userid)VALUES (#{userId})</insert>
明显要稍微麻烦一些。多的就不说了,不懂的话看看官网吧。参考资料
http://www.mybatis.org/mybatis-3/zh/getting-started.html
http://www.ghostsf.com/java/227.html
http://www.mybatis.org/mybatis-3/zh/sqlmap-xml.html
http://stackoverflow.com/questions/12103606/get-the-id-of-last-inserted-record-in-mybatis
Mybatis实现insert获取自增id相关推荐
- mybatis学习(27):获取自增id方式一(在mapper中insert配置节点的属性)
目录结构 com.geyao.mybatis.mapper BlogMapper类 package com.geyao.mybatis.mapper;import java.util.List; im ...
- mybatis学习(28):获取自增id方式二(在全局中配置setting选项)
目录结构 com.geyao.mybatis.mapper BlogMapper类 package com.geyao.mybatis.mapper;import java.util.List; im ...
- MyBatis映射文件1(增删改、insert获取自增主键值)
增删改 Mybatis为我们提供了<insert>.<update>.<delete>标签来对应增删改操作 在接口中写增删改的抽象方法 void addEmp(Em ...
- mybatis入门学习(九) -DB环境切换、使用注解、事务提交、获取自增ID、多参数传参、鉴别器、内置参数、批量写入、Oracle字段无法插入 null 值
一.多数据库环境切换 1.config配置: <!-- default="mydemo" 指定连接的数据库 --><environments default=&q ...
- MyBatis insert 获取自增主键
1.建表语句 create table user( id int PRIMARY KEY auto_increment, name varchar(400) ); 2.Maven 依赖 <pro ...
- Mybatis selectKey获取自增ID(DB2/Sybase/MySQL/Oracle/达梦)
Mybatis selectKey获取自增ID(DB2/Sybase/MySQL/Oracle/达梦) 1.selectKey 2.不同数据库写法 2.1 DB2 2.2.Sybase 2.3 MyS ...
- 【MyBatis使用】 mapper文件未编译 + statementType使用 + 返回结果字段顺序不一致 + 获取自增ID + 一个update标签批量更新记录
1. mapper 文件未编译 如果mapper文件未编译,会报绑定异常. <build><resources><resource><directory> ...
- oracle如何获取自增id,oracle实现自增id
--oracle实现自增id --创建一张T_StudentInfo表 create table T_StudentInfo ( "id" integer not null pri ...
- MyBatis-Plus 新增插入成功并获取自增Id(没问题 已实验哟)
MyBatis-Plus 新增插入成功并获取自增Id 我知道的有三种的方法可以插入新增同时获取到自增Id(插入成功的Id): mp自带 和 注释 和 xml的方法. 实体类:UserInfo /*** ...
最新文章
- SQL优化(二) 快速计算Distinct Count
- 还怕GPU资源不够用?多实例GPU MIG助攻资源利用难题
- python通过cookie绕过验证码_Python Selenium Cookie 绕过验证码实现登录示例代码
- 为什么Linux下的环境变量要用大写而不是小写
- 过拟合解决方法之L2正则化和Dropout
- 记一次mongdb搭建复制集的小故障
- hzwap u.php_『THINKPHP』U 函数
- 从零开始学习makefile(7) makefile的filter的作用
- RayData学习总结
- webservice框架
- 单片机毕业设计 stm32智能温控风扇
- prettier和beautify哪个好用
- 测试鼠标传感器的软件,鼠标该怎么选择?给大家说下鼠标传感器的差距
- android称重的技术,智能称重系统之智能地磅称解决方案
- 操作系统的64位之战
- android照片视频备份,Android 保存图片或视频到相册并刷新相册
- 已知补码如何求原码、真值
- 真正的高手,都有对抗“熵增”的底层思维
- VisualDrag低代码拖拽模板
- 爷青结!微软凌晨宣布“再见”!