赞
踩
1、mybatis中,selectKey不能多个使用,否则会报错。
Mapped Statements collection already contains XXXX insert!selectKey
2、selectKey是为了解决自增的ID,然后直接返回插入的结果的。 (我的个人理解)
在befor之前,可以封装一些数据进sql
那么问题来了:
有这么业务场景:
1、ID不自增,使用UUID
2、还要返回insert的结果
于是,开始是这样写的:
- <insert id="insert">
- <selectKey resultType="string" keyProperty="announceId" order="BEFORE">
- <![CDATA[ SELECT UPPER(REPLACE(UUID(),'-','')) AS announceId]]>
- </selectKey>
- <selectKey keyProperty="announceId" order="AFTER" resultType="String">
- select last_insert_id()
- </selectKey>
- <![CDATA[
- INSERT INTO tbl_notify_announce (
- announce_id ,
- notify_id ,
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。