Spring的框架中为您提供了一个 BeanFactoryPostProcessor 的实作类别: org.springframework.beans.factory.config.PropertyPlaceholderConfigurer。藉由这个类别,您可以将一些组态设定,移出至.properties档案中,如此的安排可以让XML定义档负责系统相关设定,而.properties档可以作为客户根据需求,自定义一些相关的参数。
来看一个Bean定义档的实际例子:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="configBean"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="location">
<value>hello.properties</value>
</property>
</bean>
<bean id="helloBean" class="onlyfun.caterpillar.HelloBean">
<property name="helloWord">
<value>${onlyfun.caterpillar.helloWord}</value>
</property>
</bean>
</beans>
假设在helloBean中有许多依赖注入的属性,这些都是比较不常变动的属性,而其中helloWord会经常变动,可以透过hello.properties来简单的设定,而这个资讯已设定在configBean的location属性中:
onlyfun.caterpillar.helloWord=Welcome!
在helloBean的helloWord属性中,${onlyfun.caterpillar.helloWord}将会被hello.properties的helloWord所取代。
如果有多个.properties档案,则可以透过locations属性来设定,例如:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN"
"http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="configBean"
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>hello.properties</value>
<value>welcome.properties</value>
<value>other.properties</value>
</list>
</property>
</bean>
<bean id="helloBean" class="onlyfun.caterpillar.HelloBean">
<property name="helloWord">
<value>${onlyfun.caterpillar.helloWord}</value>
</property>
...
</bean>
</beans>
分享到:
相关推荐
Spring 中 PropertyPlaceholderConfigurer 的使用 PropertyPlaceholderConfigurer 是 ...基本使用方法 ---------- 使用 PropertyPlaceholderConfigurer 需要首先在 Spring 配置文件中定义一个 bean,例如: ```xml ...
下面我们将详细探讨`PropertyPlaceholderConfigurer`的工作原理、使用方法以及其在实际开发中的应用。 `PropertyPlaceholderConfigurer`是Spring提供的一个Bean工厂后处理器,它的主要任务是在Spring容器初始化Bean...
以上就是关于"Spring PropertyPlaceholderConfigurer配置文件加载器集成ZooKeeper来实现远程配置读取"的详细解释,涵盖了Spring的配置处理、ZooKeeper的使用以及两者结合的实现过程。理解并掌握这一技术,有助于提升...
### 基本使用方法 首先,来看一下如何使用`PropertyPlaceholderConfigurer`: ```xml class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <value>classpath:/spring/include/...
标题:"c3p0用法步骤" 描述:"这是我学习过程中积累的学习笔记,希望对大家有用" 标签:"c3p0" 知识点详述: C3P0是一个开源的JDBC连接池,它实现了数据源和JNDI绑定,支持JDBC连接池的特性,如:自动重连、自动...
本文介绍了 Spring Value 注解的使用方法和注意事项。@Value 注解是 Spring 框架中的一种重要注解,用于简化读取配置文件的操作。通过使用 @Value 注解,可以避免手动读取配置文件的复杂操作,并实现松耦合的系统...
`PropertyPlaceholderConfigurer`允许自定义属性解析逻辑,比如通过实现`PropertySourcesPlaceholderConfigurer`并覆盖`resolvePlaceholder`方法。 8. **安全考虑**: 尽管使用Property Placeholder可以方便地...
在Spring框架中,有多种方法可以方便地读取和使用这些Properties文件中的内容。以下是一些主要的获取Properties的方法: 1. **通过PropertyPlaceholderConfigurer加载配置** Spring提供了`...
或者在构造函数或setter方法中使用: ```java @Component public class AppConfig { private String dbDriver; private String dbUrl; @Autowired public AppConfig(@Value("${db.driver}") String driver...
除了使用 PropertyPlaceholderConfigurer 之外,我们还可以使用 context 命名空间来定义属性文件,相对于 PropertyPlaceholderConfigurer 的配置方式,这种方式更优雅。 ``` file-encoding="utf-8"/> ``` 在 ...
本文将深入探讨JDBC Template的源码,结合MySQL数据库,展示其在实际应用中的使用,并提及Spring框架中的`PropertyPlaceholderConfigurer`和`BeanPropertyRowMapper`组件。 首先,JDBC Template通过预编译SQL语句、...
接下来,为了在Spring 4.0中引用这些属性,我们需要配置一个`PropertyPlaceholderConfigurer`或使用`@ConfigurationProperties`注解。`PropertyPlaceholderConfigurer`是Spring早期版本中用于注入properties文件中值...
### Spring 容器后处理器详解 #### 一、Spring 容器后处理器概念及应用...此外,使用诸如`PropertyPlaceholderConfigurer`这样的后处理器还可以提高配置管理的效率,使得应用程序能够在不同的环境中更加灵活地运行。
本文将详细介绍Spring实战之属性占位符配置器用法示例,结合实例形式分析了spring属性占位符配置器的具体配置及使用技巧。 一、配置文件配置 在Spring框架中,配置文件是应用程序的核心部分。配置文件用于存储应用...
1. **使用Spring的PropertyPlaceholderConfigurer** Spring提供了`PropertyPlaceholderConfigurer`类,可以方便地从.properties文件中读取属性。首先,在Spring的配置文件(如`applicationContext.xml`)中定义一个...
2. 在自定义的`EncryptedPropertyPlaceholderConfigurer`中,你可以添加一个方法来处理加密的属性值。例如,可以使用Java Cryptography API来实现解密过程。你需要提供一个密钥或密钥存储机制,确保只有授权的维护...
`PropertyPlaceholderConfigurer`是Spring提供的一个实用工具类,它允许我们在配置文件中使用占位符 `${...}` 来引用外部属性文件中的值。在示例中,`location`属性指定了属性文件的位置,如`classpath:/spring/...
- **实现方式**: 通过扩展`PropertyPlaceholderConfigurer`并重写其方法,根据特定条件选择加载不同的配置文件。 #### 三、案例分析与实现 **1. 配置文件设计** - **deploy.properties**: 这个文件包含了一个名为`...
在Spring框架中,读取和使用Properties文件是一种常见的配置方式,尤其当涉及到数据库连接、环境变量等需要在运行时...掌握Spring读取Properties文件的方法,不仅能够提升开发效率,还能增强应用的灵活性和可扩展性。
在Spring配置中,我们可以使用`PropertyPlaceholderConfigurer`或`PropertiesFactoryBean`来加载加密后的属性文件,并在运行时调用`EncryptPropertyFile`类的解密方法,确保Spring在初始化时能够正确解析和加载加密...