我希望在Spring启动应用中为3个支持的国家/地区代码(例如:us,uk,de)加载3个单独的属性。
为此,我需要为我尝试处理的每条消息中指定的国家/地区代码加载相应的属性文件。
目前,我从邮件中获取国家/地区代码信息作为字符串,并在我的HashMap中存在该国家/地区代码时加载属性文件。
使用usPropsInfo
在配置类中加载 ukPropsInfo
,dePropsInfo
,PropertySourcesPlaceholderConfigurer
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