mybatis插入返回id

学习笔记001

场景:数据库表做了垂直拆分,拆分成两个之后 由id进行关联 存表需要做的一些调整,1.因为旧的逻辑id是自动生成的 所以需要先存第一个表的时候拿到id返回
问题1解决:本来保存返回 id并不难 xml中加 useGeneratedKeys=“true” keyProperty=“id” 或者直接在注解里加 类似,但是 这种必须是同步的情况下才能返回 因为此次是对日志表做的拆分 所以日志以前的逻辑是异步的导致无法返回 。
mybatis插入返回id

  • 使用同步
    所以一定要用同步,且返回的结果mybatis放在了插入的对象中。

这里我做的处理是将异步的注解往上层服务加 本来加在mapper接口感觉并不太好 ,因为一般讲服务作为异步 所以都操作服务 底层操作就只是简简单单的底层增删改查。
mybatis插入返回id
异步注解开到服务方法
问题二2.因为我这里还用到了数据源的动态切换 跟异步冲突时将切换数据源的注解@DS放到了mapper上(只有放在这里才能切过来)所以这个注解未做改动 切换数据源使用的是mybatisplus的动态切换数据源。
mybatis插入返回id

问题解决,记录一下。