!-- <context:property-placeholder -->
<!-- location="/WEB-INF/jdbc-config/jdbc.properties" /> -->
<bean id="propertyConfigurer" class="com.chinaGPS.nss.util.MyPropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>/WEB-INF/jdbc-config/httpRemote.properties</value>
</list>
</property>
</bean>
package com.chinaGPS.nss.util;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Properties;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.BeansException;
import org.springframework.beans.factory.config.ConfigurableListableBeanFactory;
import org.springframework.beans.factory.config.PropertyPlaceholderConfigurer;
import com.chinaGPS.nss.constant.SystemConst;
/**加载属性类
* @author zhz
*
*/
public class MyPropertyPlaceholderConfigurer extends PropertyPlaceholderConfigurer {
private Map<String, String> resolvedProps;//将属性保存起来
@Override
protected void processProperties(ConfigurableListableBeanFactory beanFactoryToProcess,
Properties props) throws BeansException {
super.processProperties(beanFactoryToProcess, props);
resolvedProps = new HashMap<String, String>();
for (Object key : props.keySet()) {
String keyStr = key.toString();
if(StringUtils.equals(keyStr, "auto_craw"))
{
String tmp = parseStringValue(props.getProperty(keyStr), props,new HashSet());
if(StringUtils.equalsIgnoreCase(tmp, "on"))
SystemConst.AUTOCRAW = "on";
if(StringUtils.equalsIgnoreCase(tmp, "off"))
SystemConst.AUTOCRAW="off";
else
continue;
}
// resolvedProps.put(keyStr, parseStringValue(props.getProperty(keyStr), props,
// new HashSet()));
}
}
}
分享到:
相关推荐
下面将详细介绍如何在Spring中使用属性文件以及相关知识点。 1. **属性文件格式** 属性文件通常以`.properties`为扩展名,例如`application.properties`或`database.properties`。文件中的键值对以等号`=`分隔,如...
在Java Spring框架中,使用外部属性文件是一种常见的最佳实践,它允许我们将应用程序的配置信息与源代码分离,便于管理、维护和环境间的切换。本文将深入探讨如何在Spring应用中利用外部属性文件,以及其背后的原理...
在默认配置文件中,按照属性键值对的格式配置应用程序的属性。例如: properties spring.datasource.url=jdbc:mysql://localhost/test spring.datasource.username=root spring.datasource.password=123456 可以根据...
在Spring框架中,可以使用`Resource`接口和`ApplicationContext`来加载属性文件,这在多环境配置或类路径资源加载时非常有用: ```java Resource resource = new ClassPathResource("config.properties"); ...
Spring Expression Language (SpEL)可以在配置文件中使用,允许在属性值中引用其他属性。例如: ```properties server.port=${random.int[1024,65535]} ``` 这里,`server.port`的值将是一个1024到65535之间的...
在实际开发中,使用外部属性文件能够极大地提高灵活性,使得应用的配置更加集中和易于管理。当环境发生变化或需要调整配置时,只需修改属性文件而无需改动代码,这对于多环境部署和持续集成非常有利。 此外,`build...
在Spring框架中,属性文件(通常为`.properties`格式)被广泛用来存储应用程序的配置信息,如数据库连接、邮件设置等。这些配置信息可以独立于源代码,方便管理和修改。本文将详细介绍如何在Spring中读取和使用这些...
本文将详细介绍如何在Eclipse IDE中设置Spring XML文件提示功能,帮助开发者更高效地编写代码。 #### 二、准备工作 在开始之前,请确保已经安装了以下软件: - **Eclipse IDE**:推荐使用最新版本的Eclipse IDE ...
在Spring Boot框架中,配置文件的管理是项目构建和运行的关键部分。Spring Boot的设计理念是简化配置,使得开发者能够快速地启动和运行应用程序。在实际开发中,我们往往需要为不同的部署环境(如开发、测试、生产)...
在`spring-demo09-读取properties配置文件内容`这个示例中,你可以学习到如何将配置文件的值注入到Java代码中,以便在程序运行时使用。通过这种方式,我们可以轻松地更改配置而无需修改代码,极大地提高了项目的可...
在Java开发中,属性文件通常以`.properties`为扩展名,它以键值对的形式存储配置信息。例如,我们可以创建一个名为`application.properties`的文件,其中包含以下内容: ``` database.url=jdbc:mysql://localhost:...
标题“spring引入prop”指的是在Spring框架中使用配置属性(properties)的过程。Spring框架允许开发者通过.properties或.yml文件来管理应用程序的配置,这种方式方便了环境变量的管理和微调。下面将详细阐述Spring...
- **功能**: 它能够将`properties`文件中的键值对映射到Spring容器中,供其他Bean使用。 **2. 动态加载配置文件** - **目的**: 根据部署环境的不同,动态地更改应用使用的配置文件,从而实现环境间的灵活切换。 - *...
在定义 Profile 时,我们需要指定 Profile 的名称,以便于在应用程序中使用。 2. 使用场景 Profile 应用场景非常广泛,例如,我们可以使用 Profile 来区隔开发、测试、生产等不同的环境,并提供了更加灵活的配置...
在Spring框架中,读取和使用Properties文件是一种常见的配置方式,尤其当涉及到数据库连接、环境变量等需要在运行时动态加载或更改的信息时。本文将深入解析如何在Spring环境中读取Properties文件,包括配置步骤、...
然后,你可以在任何需要使用这些属性的bean中使用`@Value`注解: ```java @Service public class StudentService { @Value("${db.url}") private String dbUrl; @Value("${db.username}") private String ...
这个注解允许我们将配置文件中的键值对映射到Java对象的属性上。首先,我们需要在`pom.xml`文件中添加`spring-boot-configuration-processor`依赖,这样Spring Boot就可以处理配置属性并生成元数据: ```xml ...
- 与直接在代码中使用`Environment`接口获取配置相比,`@ConfigurationProperties`提供了类型安全的访问方式,避免了因键值拼写错误导致的异常。 8. **全局配置** - 如果希望某个配置类对整个应用生效,可以将其...
Spring允许在配置中使用SpEL表达式作为占位符,如`@Value("#{systemProperties['java.version']}")`,这将注入Java版本号到bean的属性中。 7. **T()和P()函数** `T()`函数用于引入类型,如`T(java.util.Date)`...