MyBatis-Plus 新增插入成功并获取自增Id
我知道的有三种的方法可以插入新增同时获取到自增Id(插入成功的Id):
mp自带 和 注释 和 xml的方法。
实体类:UserInfo


/*** (Userinfo)实体类** @author 柠檬味拥抱* @since 2020-06-05 16:34:58*//**
这个注解是自动生成set/get方法 依赖的代码如下:<!--自动生成set/get--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.8</version></dependency>
*/
@Data
@ToString
public class Userinfo implements Serializable {//自增 AUTO:是让数据库自增 有好几种不同大家可以自行百度@TableId(type= IdType.AUTO)private Integer id;private String userName;private Date createTime;
}

Mapper:UserInfoMapper类:

/*** (Userinfo)表数据库访问层** @author 柠檬味拥抱* @since 2020-06-05 16:34:58*/
public interface UserinfoMapper extends BaseMapper<UserInfo> {//继承BaseMapper<实体类> //BaseMapper类的代码有基础CRUD都是在这里处理//可以在这里写注解@Select @Insert @Update @Delete//也可以在这里写方法 自己创建xml 与这个mapper类关联//这里是xmlInteger insertUser (UserInfo userInfo);com.twoceok.ceshi.insertDemo#test}

UserInfoMapper.xml:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="自己项目的包名.mapper.UserinfoMapper"><resultMap type="自己项目的包名.entity.Userinfo" id="UserinfoMap"><result property="id" column="id" jdbcType="INTEGER"/><result property="userName" column="user_name" jdbcType="VARCHAR"/><result property="createTime" column="create_time" jdbcType="TIMESTAMP"/></resultMap><insert id="insertUser" parameterType="cn.bear.neckmassager.api.entity.Userinfo" useGeneratedKeys="true" keyProperty="id">insert into userinfo(user_name,create_time) values (#{userName},#{createTime});
</insert></mapper>

然后我们直接测试走mapper,不走service了哦

/***@ClassName insertDemo*@Author 柠檬味拥抱*@Date 2020/6/5 0005 16:14*@Version 1.0*/@RunWith(SpringRunner.class)
@SpringBootTest(classes = {NeckMessagerApplication.class})// 指定启动类
public class insertDemo {@Autowiredprivate UserinfoMapper userinfoMapper;@Testpublic void test(){Userinfo userInfo = new Userinfo();userInfo.setUserName("柠檬味拥抱==1");userInfo.setCreateTime(new Date());int insert1 = userinfoMapper.insert(userInfo);System.out.println("mp自带的insert方法:结果:"+insert1+"=====获取Id:"+userInfo.getId());System.out.println("==================================");Userinfo userInfo2 = new Userinfo();userInfo2.setUserName("柠檬味拥抱==2");userInfo2.setCreateTime(new Date());int insert2 = userinfoMapper.insertUser(userInfo2);System.out.println("自己写的xml的方法:结果:"+insert2+"=====获取Id:"+userInfo2.getId());System.out.println("==================================");Userinfo userInfo3 = new Userinfo();userInfo3.setUserName("柠檬味拥抱==3");userInfo3.setCreateTime(new Date());int insert3 = userinfoMapper.insertUserInfo(userInfo3);System.out.println("自己写的注解的方法:结果:"+insert3+"=====获取Id:"+userInfo3.getId());}}


数据库:

ok 完成,请多多请教,一起加油哟嘻嘻

MyBatis-Plus 新增插入成功并获取自增Id(没问题 已实验哟)相关推荐

  1. mybatis入门学习(九) -DB环境切换、使用注解、事务提交、获取自增ID、多参数传参、鉴别器、内置参数、批量写入、Oracle字段无法插入 null 值

    一.多数据库环境切换 1.config配置: <!-- default="mydemo" 指定连接的数据库 --><environments default=&q ...

  2. mysql 新增返回主键自增id_详解mysql插入数据后返回自增ID的七种方法

    引言 mysql 和 oracle 插入的时候有一个很大的区别是: oracle 支持序列做 id: mysql 本身有一个列可以做自增长字段. mysql 在插入一条数据后,如何能获得到这个自增 i ...

  3. 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 ...

  4. 【MyBatis使用】 mapper文件未编译 + statementType使用 + 返回结果字段顺序不一致 + 获取自增ID + 一个update标签批量更新记录

    1. mapper 文件未编译 如果mapper文件未编译,会报绑定异常. <build><resources><resource><directory> ...

  5. mysql c接口返回自增id_详解mysql插入数据后返回自增ID的七种方法

    引言 mysql 和 oracle 插入的时候有一个很大的区别是: oracle 支持序列做 id: mysql 本身有一个列可以做自增长字段. mysql 在插入一条数据后,如何能获得到这个自增 i ...

  6. oracle如何获取自增id,oracle实现自增id

    --oracle实现自增id --创建一张T_StudentInfo表 create table T_StudentInfo ( "id" integer not null pri ...

  7. mysql插入数据后返回自增id

    mysql插入数据后返回自增id 使用<insert 中的useGeneratedKeys 和 keyProperty 两个属性 在Mybatis Mapper文件中添加属性 useGenera ...

  8. mysql获取自增_mysql 获取自增id的值的方法

    原生jdbc方式: Statement.getGeneratedKeys() 示例: Statement stmt = null; ResultSet rs = null; try { // // C ...

  9. twisted mysql_在Twisted下用MySQLadbapi获取自增id

    D jango的ORM有一个很便捷的功能,其实也应该说是一个很基本的功能吧.就是在对一个model调用 save() 插入到数据库后,会将创建的 D jango的ORM有一个很便捷的功能,其实也应该说 ...

最新文章

  1. jmeter实现多并发
  2. Linux上安装jdk8
  3. 小米用户画像实战(附48页PPT)
  4. allegro约束设置
  5. python代码该怎么简化_Python开发简化代码的六大技巧
  6. mysql改表字段类型导致数据丢失_故障分析 | 记一次 MySQL 主从双写导致的数据丢失问题【转】...
  7. webserver之处理HTTP请求
  8. 技术干货 | 基于MindSpore更好的理解Focal Loss
  9. Vue2.0史上最全入坑教程(中)—— 脚手架代码详解
  10. 笔记本电脑下载python视频-Python的用法笔记本
  11. Android Sutiod报错:Dx unsupported class file version 52.0(解决)
  12. 【BERT实践】看不懂bert没关系,用起来so easy!
  13. 转: hibernate配置文件hibernate.cfg.xml和.hbm.xml的详细解释
  14. PPT创作技巧及有用素材
  15. 有缘-无缘-惜缘-随缘
  16. 阴历转换阳历c语言csdn,JavaScript实现公历转换农历
  17. eclipse的web项目中index.jsp文件出现The superclass was not found on the java build path
  18. PYNQ之Jupyter Notebook
  19. PR 2020 关于驱动程序更新
  20. 18春计算机基础在线作业,东大18春《计算机基础》在线作业二.doc

热门文章

  1. C# Activator的使用(类工厂动态创建类的实例)
  2. C盘容量不足,怎么增加c盘空间?看这5个方法
  3. 谷歌浏览器崩溃设置崩溃_Google的广告业务开始崩溃了吗?
  4. 编译原理(7):运行存储分配
  5. 中国地质大学计算机研究生考试目录,2017年中国地质大学(武汉)资源学院考研专业目录及考试科目...
  6. 笔试——分频电路设计
  7. 美国参议员建议立法“黑掉国土安全部”
  8. prototype.js开发者手册
  9. 制作微信H5互动小游戏如何确认主题?
  10. python图片镜像翻转_python图像处理之镜像实现方法