我需要将一个配置文件Map到一个对象Configuration
(已经完成了),这个对象是由几个配置对象组成的,每个配置对象被一个服务使用,例如Configuration
类是由ConfA
和ConfB
类组成的:
public class Configuration {
private ConfA confA;
private ConfB confB;
//getters and setters
}
然后我们有一个由类ServiceA
和ServiceB
实现的接口Service
,每个类分别使用ConfA
和ConfB
:
public interface Service {
void work(Configuration configuration);
}
使用我目前的方法,在每个特定的服务中,我必须执行类似下面的操作来获得正确的配置:
public class ServiceB implements Service {
@Override
public void work(Configuration configuration) {
ConfB confB = configuration.getConfB();
}
}
是否有任何模式可以避免在每个服务中出现ConfB confB = configuration.getConfB();
代码重复?是否有任何方法可以避免服务知道如何检索自己的配置?
1条答案
按热度按时间0tdrvxhp1#
我想你可以做得更简单:
因此,高级模块将
ConfB
注入到低级模块ServiceB
中。