SelectKey怎么在Mybatis中应用

这篇文章将为大家详细讲解有关SelectKey怎么在Mybatis中应用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

成都创新互联公司是一家专业提供黄岛企业网站建设,专注与网站设计、网站制作、H5技术、小程序制作等业务。10年已为黄岛众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。

SelectKey在Mybatis中是为了解决Insert数据时不支持主键自动生成的问题,他可以很随意的设置生成主键的方式。

SelectKey怎么在Mybatis中应用

SelectKey需要注意order属性,像MySQL一类支持自动增长类型的数据库中,order需要设置为after才会取到正确的值。

像Oracle这样取序列的情况,需要设置为before,否则会报错。

下面是一个xml和注解的例子,SelectKey很简单,两个例子就够了:


  insert into table1 (name) values (#{name})
  
   CALL IDENTITY()
  
 

上面xml的传入参数是map,selectKey会将结果放到入参数map中。用POJO的情况一样,但是有一点需要注意的是,keyProperty对应的字段在POJO中必须有相应的setter方法,setter的参数类型还要一致,否则会报错。

  @Insert("insert into table2 (name) values(#{name})")
  @SelectKey(statement="call identity()", keyProperty="nameId", before=false, resultType=int.class)
  int insertTable2(Name name);

关于SelectKey怎么在Mybatis中应用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


文章标题:SelectKey怎么在Mybatis中应用
当前网址:http://myzitong.com/article/pchjgd.html