阅读 70

springboot架构,redis sentinel配置

通过SpringBoot mybatis redis项目的实例,了解了SpringBoot对redis的基本操作,昨天了解了redis入门(三) ——事务

趁着这个势头,让我们来学习如何在SpringBoot中使用Redis事务。

我查了网上的资料,主要有两种方法在SpringBoot上使用Redis事务

目录通过enableTransactionSupport (母测无效,原因不明)进行SessionCallback

enableTransactionSupport (母测无效,原因不明) ) ) ) )

使用redisTemplate将enableTransactionSupport设置为true,并指示事务开始-入队-事务执行

privatevoidsetdatabytransaction (listuserbeanuserbeans ) redis template.setenabletransactionsupport ) true; redisTemplate.multi (; user beans.foreach (item-{ redis template.opsforlist ).rightpush(redis_user ),item ); ); redisTemplate.exec (; }但是,如果在事务执行过程中出现异常,请参阅没有开启的事务

我为执行类添加了事务注释,但是很遗憾它无效

@ springbootapplication @ enabletransactionmanagement//事务注释publicclassdemoapplication { publicstaticvoidmain [ ] araraletic 幸运的是,这个方法不是推荐的方法。redisTemplate.exec(此方法不会关闭连接。

在SessionCallback上,所有操作都在同一个Session上进行。

privatevoidsetdatabysessioncallback { listuserbeanuserbeans } { sessioncallbacklistsessioncallback=newsessioncallllbact } V operations ) throwsdataaccessexception ) operations.multi ); user beans.foreach (item-{ redis template.opsforlist ).rightpush(redis_user ),item ); ); return redisTemplate.exec (; }; }


文章分类
代码人生
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐