问题:通过redisTemplate.setEnableTransactionSupport(true)开启事务后,单独执行redisTemplate.boundValueOps(key).get()得到的结果为null。
原因:因为要执行redisTemplate.exec()才能返回结果
解决:1、不使用事务;2、执行redisTemplate.exec()拿结果;3、改用其他方式使用事务
参考:
SpringBoot中使用redis事务
关于Redis的Transaction
Redis配置了redisTemplate.setEnableTransactionSupport(true)之后的坑,以及自己的理解

本文解析了在SpringBoot中使用Redis事务时,通过redisTemplate.setEnableTransactionSupport(true)开启事务后,单独执行get操作结果为null的原因及解决方案。指出必须执行redisTemplate.exec()才能获取事务执行结果,提供了解决方案包括不使用事务、执行exec()方法或改用其他事务处理方式。
2379

被折叠的 条评论
为什么被折叠?



