最近发现身边的同事,在写插入操作的时候需要用到它的自增长的id,都是另外写一个查询方法取获取刚刚插入语句的id,这样写起来也很麻烦因为这样子我们还需要去写sql语句以及接口,其实mybatis给我们提供了这样的属性,来让我们获取他的自增长id,下面来了解一下它的属性 keyProperty 取id的key值,主要是在主键是自增的情况下,添加成功后可以直接使用主键值,其中keyProperty的值是对象的属性值不是数据库表中的字段名。 useGeneratedKeys 参数只针对 insert 语句生效,默认为 false。当设置为 true 时,表示如果插入的表以自增列为主键,则允许 JDBC 支持自动生成主键,并可将自动生成的主键返回。mybatis如何获取插入操作的自增长的id
mybatis如何获取插入操作的自增长的id
keyProperty属性
useGeneratedKeys的属性
使用keyProperty属性和useGeneratedKeys的属性
mapper文件
<!--keyProperty等于的值必须是你类里面要有的属性--> <insert id="insert" keyProperty="id" useGeneratedKeys="true" parameterType="User" > INSERT INTO `test`.`smbms_user` (`userCode`, `userName`, `userPassword`) VALUES (#{userCode}, #{userName}, #{userPassword}); </insert>
测试代码
User user=new User(); user.setUserCode("friday"); user.setUserPassword("123456"); int num = UserService.insert(user); //等方法执行完之后调用对象的user.getId()方法即可 if (num>0){ System.out.println("自增长id:"+user.getId()+"t"+"用户名:"+user.getUserCode()); }else { System.out.println("操作失败"); }
执行结果
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算