A服务有1个humanService,实现类ManServiceImpl。
在B服务重写了ManServceImpl实现,并且还扩展了个新的实现WomanServiceImpl。
当我调用humanService时,我希望执行的是B服务的两个实现。
重写ManServiceImpl调用的我有个思路,扩展新的实现调用请各位指点下
A服务有1个humanService,实现类ManServiceImpl。
在B服务重写了ManServceImpl实现,并且还扩展了个新的实现WomanServiceImpl。
当我调用humanService时,我希望执行的是B服务的两个实现。
重写ManServiceImpl调用的我有个思路,扩展新的实现调用请各位指点下
一种是profile,最终结果只会注入一个bean,缺点也很明显,如果你确定这多个bean都要注入到容器,这种可能就不一定适用了
或者可以使用装饰者模式,类似于mybatis的CachingExecutor,这样就可以实例化的时候自己决定用哪个实现,甚至可以从yml文件读取beanId进行初始化,将写死的部分做成可配置