java 读取配置对象的最佳模式

idfiyjo8  于 2023-02-07  发布在  Java
关注(0)|答案(1)|浏览(96)

我需要将一个配置文件Map到一个对象Configuration(已经完成了),这个对象是由几个配置对象组成的,每个配置对象被一个服务使用,例如Configuration类是由ConfAConfB类组成的:

public class Configuration {

    private ConfA confA;
    private ConfB confB;

    //getters and setters
}

然后我们有一个由类ServiceAServiceB实现的接口Service,每个类分别使用ConfAConfB

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();代码重复?是否有任何方法可以避免服务知道如何检索自己的配置?

0tdrvxhp

0tdrvxhp1#

我想你可以做得更简单:

public class ServiceB implements Service {

    @Override
    public void work(ConfB bConf) {
        ConfB confB = bConf;
    }
}

因此,高级模块将ConfB注入到低级模块ServiceB中。

相关问题