SelectKey怎么在Mybatis中应用

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

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

SelectKey怎么在Mybatis中应用

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

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

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

<insertid="insert"parameterType="map">
insertintotable1(name)values(#{name})
<selectKeyresultType="java.lang.Integer"keyProperty="id">
CALLIDENTITY()
</selectKey>
</insert>

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

@Insert("insertintotable2(name)values(#{name})")
@SelectKey(statement="callidentity()",keyProperty="nameId",before=false,resultType=int.class)
intinsertTable2(Namename);

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

发布于 2021-04-08 13:37:00
收藏
分享
海报
0 条评论
166
上一篇:使用jQuery怎么合并表格单元格中相同的行 下一篇:使用JavaScript怎么实现一个级联算法
目录

    推荐阅读

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码