美文网首页
若依结合mp使用乐观锁

若依结合mp使用乐观锁

作者: 小明_d19e | 来源:发表于2021-06-22 08:25 被阅读0次

我没试过若依的mp版,我自己改的,若依本身有mybatis,我加入了mp之后,想用乐观锁,需要在配置中手动写入配置:
官方文档的bean要加入

@Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor() {
        MybatisPlusInterceptor mybatisPlusInterceptor = new MybatisPlusInterceptor();
        mybatisPlusInterceptor.addInnerInterceptor(new OptimisticLockerInnerInterceptor());
        return mybatisPlusInterceptor;
    }

自己配置还得在MybatisSqlSessionFactoryBean sessionFactory加入:
sessionFactory.setPlugins(new Interceptor[] { mybatisPlusInterceptor() });
实体字段上加@Version

ShopStock ss = null;
        int i = 0;
        do {

            ss = shopStockService
                    .getOne(new QueryWrapper<ShopStock>().eq("shop_id", shopId).eq("goods_id", item.getGoodsId()));

            ss.setQty(ss.getQty() + item.getQty());
            ss.setOpQty(ss.getOpQty() - item.getQty());
            if (++i > 5) {
                throw new RuntimeException(String.format("更新尝试超过5次,更新失败"));
            }

            // 乐观锁更新
        } while (!shopStockService.updateById(ss));

        return true;

如果超过5次都没更新成功,那同时操作的人太多了,就失败吧.大型系统应该放mq

相关文章

  • 若依结合mp使用乐观锁

    我没试过若依的mp版,我自己改的,若依本身有mybatis,我加入了mp之后,想用乐观锁,需要在配置中手动写入配置...

  • Mysql中的悲观锁介绍

    最近的项目中,因为涉及到Mysql数据中乐观锁和悲观锁的使用,所以结合项目和网上的知识点对乐观锁和悲观锁的知识进行...

  • MP中使用乐观锁实现并发控制

    1.在数据库表中添加版本控制,version字段。 2,在实体类中加入对于的字段 3,注册组件 4,测试 扩展:什...

  • Mysql锁

    按照使用方式,锁分为: 悲观锁 乐观锁 乐观锁 概念就不细讲了,乐观锁和悲观锁的区别是乐观锁是假设在修改数据之前,...

  • 面试官:你说说互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景

    面试官:你说说互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景https://mp.weixin.qq.com/s...

  • StampLock 之二

    乐观读锁的获取 乐观读锁只需要获取,不需要释放。只要没有线程获取写锁,那么就能获取到乐观读锁。当然,当使用由乐观读...

  • MySQL数据库InnoDB引擎的读写锁、事务隔离级别实例分析

    数据库锁分类 按性能分 乐观锁(比如使用version字段比对,无需等待)、悲观锁(需要等待其他事务) 乐观锁,如...

  • 悲观锁和乐观锁的原理及使用场景

    悲观锁和乐观锁的区别 场景 什么时候使用乐观锁? 资源提交冲突,其他使用方需要重新读取资源,会增加读的次数,但是可...

  • 递增场景

    synchronized使用系统重量级的锁 AtomicXXX使用无锁-自旋锁,CAS-类似于乐观锁, 所以效率优...

  • 电商秒杀功能实现

    电商网站的秒杀是如何实现的 - 若鱼的专栏 - CSDN博客 秒杀---使用乐观锁实现或cache实现 - 胖胖龙...

网友评论

      本文标题:若依结合mp使用乐观锁

      本文链接:https://www.haomeiwen.com/subject/zarzsltx.html