请问Seata中策略模式有什么更优雅的写法或者替代的实现吗?觉得通过一个key去映射对应的实现很麻烦,有其他的方式吗?
有一个做法: 策略模式本身需要一个holder,我们在holder中做一个map存储业务key与实现beanName的关系,holder提供一个register方法往这个map中注册beanName。
那么在策略的实现中我们就可以通过afterPropertiesSet方法中,调用holder的register方法往holder中注册。
holder中通过Autowire一个Map来获取同类型不同名的bean实现。这样一来就可以直接通过getKey的方式get到我们需要的Bean 此答案整理自钉钉群“3群-Seata 开源讨论群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。