xml 配置項:html
<bean id="propertyConfigurer" class="com.boc.icms.archive.util.ExPropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>xdb.properties</value> <value>offline.properties</value> </list> </property> </bean>
java代碼:java
public class ExPropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer { private final DefaultResourceLoader defaultResourceLoader; private final String FILE_SEPERATOR = System.getProperty("file.separator"); private static Logger logger = Logger.getLogger(ExPropertyPlaceholderConfigurer.class); public ExPropertyPlaceholderConfigurer(){ defaultResourceLoader=new FileSystemResourceLoader(); } private Resource getResource(String fileName){ try{ String filePath = System.getProperty(PubConst.SERVER_CFG_DIR)+FILE_SEPERATOR+fileName; return defaultResourceLoader.getResource(filePath); }catch(Exception e){ logger.error("get["+fileName+"]Resource Exception",e); return null; } } public void setLocation(String location){ super.setLocation(getResource(location)); } /** * 同時加載多個properties *@auther zhangcd *@date 2017年5月8日 *@param locations */ public void setLocations(List<String> locations){ if(locations != null && !locations.isEmpty()){ int size = locations.size(); Resource[] res = new Resource[size]; for(int i = 0;i<size;i++){ res[i]= getResource(locations.get(i)); } super.setLocations(res); } } }