tk.mybatis Oracle通过序列生成主键问题

正常情况根据序列生成主键是这么写的

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY,generator = "select  序列名称.nextval from dual")

但是有一天我同事这样写不行了,我找遍了所有可能的问题

发现,它居然在执行新增语句后,再执行序列注入主键的查询,这。。。心态蹦了啊

 

解决办法:

在xxxApplication.java (就是自己的程序入口)
第一步: 注释调以前的@MapperScan("com.xxx.xxxx.mapper")

第二步:在xxxApplication.java 中增加一下方法,目的是在新增之前执行序列生成

    @Bean
    public MapperScannerConfigurer mapperScannerConfigurer(){
        MapperScannerConfigurer configurer = new MapperScannerConfigurer();
        // 修改为自己的mapper包路径
        configurer.setBasePackage("com.xxx.xxxx.mapper");
        Properties properties = new Properties();
        // 在新增之前执行序列生成
        properties.setProperty("order", "before");
        configurer.setProperties(properties);
        return configurer;
    }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Gavino.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值