在spring boot中使用多态加载属性

时间:2016-02-03 22:06:17

标签: spring properties spring-boot polymorphism

我希望在Spring启动应用中为3个支持的国家/地区代码(例如:us,uk,de)加载3个单独的属性。

为此,我需要为我尝试处理的每条消息中指定的国家/地区代码加载相应的属性文件。

目前,我从邮件中获取国家/地区代码信息作为字符串,并在我的HashMap中存在该国家/地区代码时加载属性文件。

使用usPropsInfo

在配置类中加载

ukPropsInfodePropsInfoPropertySourcesPlaceholderConfigurer

Map<String, Properties> countryCodeProps = new HashMap<String, Properties>();
countryCodeProps.put ("us", usPropsInfo);
countryCodeProps.put ("uk", ukPropsInfo);
countryCodeProps.put ("de", dePropsInfo);

String countryCode = message.getStringProperty("country");

if(null!=countryCode && countryCode.trim().size()>0
{
    if(countryCodeProps.containsKey(countryCode)){
        Properties props = countryCodeProps.get(countryCode);
    }
}

有没有更好的方法来实现这一目标?我可以在spring boot中使用Polymorphism实现这个目的吗?

谢谢, ABHI

0 个答案:

没有答案