mybatis新增返回主键id统计父级id下面有多少子级

版权声明:本文为博主原创文章可随意转载,但请注明出处! /u/article/details/

上述xml配置含义为,属性studId是参数類型Student对象的主键属性毫无疑问,Student对象中有studId属性

含义为:ArrayList集合中的元素的studId属性。所以keyProperty和parameterType之间的关系,有时是直接关系有时是间接关系。明白这个道理之后我们就可以开始进一步阅读源码了。

 2.第二种方式:使用注解

版权声明:本文为博主原创文章未经博主允许不得转载。 /sinat_/article/details/

一、前言                                   

  数据库操作怎能少了INSERT操作呢下面记录mybatis新增返回主键id关于INSERT操作的笔记,以便日后查阅

二、 insert元素 属性详解                            

   keyColumn ,设置数据表自动生成的主键名对特定数据库(如PostgreSQL),若自动生成的主键不是第一个字段则必须设置

三、一般的INSERT操作——返回值为插入的记录数目                

四、执行INSERT操作后获取记录主键                        

 

  甴于手段②获取主键的方式依赖数据库本身因此推荐使用手段①。

  注意:mapper接口返回值依然是成功插入的记录数但不同的是主键值已经賦值到领域模型实体的id中了。

五、 selectKey子元素 详解                            

注意:selectKey操作会将操作查询结果赋值到insert元素的parameterType的入参实例下对应的属性中并提供给insert语句使用

六、批量插入                                 

上述方式相当语句逐条INSERT语句执行,将出现如下问题:
1. mapper接口的add方法返回值将是最一条INSERT语句的操作成功的记录数目(就是0或1)而不是所有INSERT语句的操作成功的总记录数目
2. 当其中一条不成功时,不会进行整体回滚

上述方式解决了方式1中的问题。但该方式仅限于MSSQL

该方式与方式2效果一样若为Oracle则采用

我要回帖

更多关于 mybatis新增返回主键id 的文章

 

随机推荐