由Typesafe Config支持的Spring Environment

由Typesafe Config支持的Spring Environment,第1张

由Typesafe Config支持的Spring Environment

我想我想出了一种比手动添加

PropertySource
属性源更惯用的方法。创建一个
PropertySourceFactory
引用
@PropertySource

首先,我们

TypesafeConfigPropertySource
与您拥有的几乎相同:

public class TypesafeConfigPropertySource extends PropertySource<Config> {    public TypesafeConfigPropertySource(String name, Config source) {        super(name, source);    }    @Override    public Object getProperty(String path) {        if (source.hasPath(path)) { return source.getAnyRef(path);        }        return null;    }}

接下来,我们创建一个PropertySource 工厂 ,该 工厂 返回该属性源

public class TypesafePropertySourceFactory implements PropertySourceFactory {    @Override    public PropertySource<?> createPropertySource(String name, EnpredResource resource) throws IOException {        Config config = ConfigFactory.load(resource.getResource().getFilename()).resolve();        String safeName = name == null ? "typeSafe" : name;        return new TypesafeConfigPropertySource(safeName, config);    }}

最后,在我们的配置文件中,我们可以像其他任何属性一样引用属性源,

PropertySource
而不必自己添加PropertySource:

@Configuration@PropertySource(factory=TypesafePropertySourceFactory.class, value="someconfig.conf")public class PropertyLoader {    // Nothing needed here}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5621840.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存