Java中如何获取spring中配置的properties属性文件内容
2014-04-01 10:05
776 查看
1、通过spring配置properties文件
<bean id="propertyConfigurer"
class="com.tjsoft.base.util.CustomizedPropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="true" />
<property name="locations">
<list>
<value>/WEB-INF/config/jdbc.properties</value>
<value>/WEB-INF/config/mail.properties</value>
<value>/WEB-INF/config/system.properties</value>
</list>
</property>
</bean>
2、自定义类CustomizedPropertyPlaceholderConfigurer
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;
/**
* 自定义PropertyPlaceholderConfigurer返回properties内容
*
* @author LHY 2012-02-24
*
*/
public class CustomizedPropertyPlaceholderConfigurer extends
PropertyPlaceholderConfigurer {
private static Map<String, Object> ctxPropertiesMap;
@Override
protected void processProperties(
ConfigurableListableBeanFactory beanFactoryToProcess,
Properties props) throws BeansException {
super.processProperties(beanFactoryToProcess, props);
ctxPropertiesMap = new HashMap<String, Object>();
for (Object key : props.keySet()) {
String keyStr = key.toString();
String value = props.getProperty(keyStr);
ctxPropertiesMap.put(keyStr, value);
}
}
public static Object getContextProperty(String name) {
return ctxPropertiesMap.get(name);
}
}
这样就可以通过CustomizedPropertyPlaceholderConfigurer类来获取properties属性文件中的内容了
3、如何获取属性文件的内容
String host = (String) CustomizedPropertyPlaceholderConfigurer.getContextProperty("mail.smtp.host");
<bean id="propertyConfigurer"
class="com.tjsoft.base.util.CustomizedPropertyPlaceholderConfigurer">
<property name="ignoreResourceNotFound" value="true" />
<property name="locations">
<list>
<value>/WEB-INF/config/jdbc.properties</value>
<value>/WEB-INF/config/mail.properties</value>
<value>/WEB-INF/config/system.properties</value>
</list>
</property>
</bean>
2、自定义类CustomizedPropertyPlaceholderConfigurer
import java.util.HashMap;
import java.util.Map;
import java.util.Properties;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;
/**
* 自定义PropertyPlaceholderConfigurer返回properties内容
*
* @author LHY 2012-02-24
*
*/
public class CustomizedPropertyPlaceholderConfigurer extends
PropertyPlaceholderConfigurer {
private static Map<String, Object> ctxPropertiesMap;
@Override
protected void processProperties(
ConfigurableListableBeanFactory beanFactoryToProcess,
Properties props) throws BeansException {
super.processProperties(beanFactoryToProcess, props);
ctxPropertiesMap = new HashMap<String, Object>();
for (Object key : props.keySet()) {
String keyStr = key.toString();
String value = props.getProperty(keyStr);
ctxPropertiesMap.put(keyStr, value);
}
}
public static Object getContextProperty(String name) {
return ctxPropertiesMap.get(name);
}
}
这样就可以通过CustomizedPropertyPlaceholderConfigurer类来获取properties属性文件中的内容了
3、如何获取属性文件的内容
String host = (String) CustomizedPropertyPlaceholderConfigurer.getContextProperty("mail.smtp.host");
相关文章推荐
- Java IO流学习总结
- java 正则扫描EL 表达式
- java命令行运行:找不到或无法加载主类
- java中synchronized的用法详解
- SpringMVC基本的配置
- 第一届山东省ACM——Phone Number(java)
- 泛型(JDK1.5新特性)(四)
- MyEclipse8.5注册码 到2015年
- 关于Java中的被动引用
- java中正则表达式用Pattern计算字符串的结果(四则运算);分成有括号和没括号;当然也可以采用逆波兰式
- struts中iterator标签使用,用于空格的填充
- Spring AOP详解
- Java转C#的最佳工具
- 更新java后的错误
- 禁用Java DNS缓存-Disable DNS caching
- 第一届山东省ACM——Balloons(java)
- Java 开发环境安装配置 (windows)
- java--IO流-Properties类
- Java 理论与实践: 正确使用 Volatile 变量
- Java性能调优笔记