- 浏览: 20401 次
- 性别:
- 来自: 青岛
文章分类
最新评论
1. PropertyPlaceholderConfigurer是个bean工厂后置处理器的实现,也就是BeanFactoryPostProcessor接口的一个实现。PropertyPlaceholderConfigurer可以将上下文(配置文件)中的属性值放在另一个单独的标准java Properties文件中去。在XML文件中用${key}替换指定的properties文件中的值。这样的话,只需要对properties文件进行修改,而不用对xml配置文件进行修改。
2.在Spring中,使用PropertyPlaceholderConfigurer可以在XML配置文件中加入外部属性文件,当然也可以指定外部文件的编码,如:
当然也可以引入多个属性文件,如:
3.譬如,jdbc.properties的内容为:
4.那么在spring配置文件中,我们就可以这样写:
5.这样,一个简单的数据源就设置完毕了。可以看出:
6.查看源代码,可以发现,locations属性定义在PropertyPlaceholderConfigurer的祖父类PropertiesLoaderSupport中,而location只有 setter方法。类似于这样的配置,在spring的源程序中很常见的。
我们可以通过System.setProperty(key, value)或者java中通过-Dnamevalue来给Spring配置文件传递参数。
2.在Spring中,使用PropertyPlaceholderConfigurer可以在XML配置文件中加入外部属性文件,当然也可以指定外部文件的编码,如:
<bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="location"> <value>conf/sqlmap/jdbc.properties</value> </property> <property name="fileEncoding"> <value>UTF-8</value> </property> </bean>
当然也可以引入多个属性文件,如:
<bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>/WEB-INF/mail.properties</value> <value>classpath: conf/sqlmap/jdbc.properties</value>//注意这两种value值的写法 </list> </property> </bean>
3.譬如,jdbc.properties的内容为:
jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/mysqldb?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=round; jdbc.username=root jdbc.password=123456
4.那么在spring配置文件中,我们就可以这样写:
<bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value>classpath: conf/sqlmap/jdbc.properties </value> </list> </property> </bean> <bean id="dataSource"class="org.apache.commons.dbcp.BasicDataSource"destroy-method="close"> <property name="driverClassName"value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}"/> <property name="password"value="${jdbc.password}" /> </bean>
5.这样,一个简单的数据源就设置完毕了。可以看出:
PropertyPlaceholderConfigurer起的作用就是将占位符指向的数据库配置信息放在bean中定义的工具。
6.查看源代码,可以发现,locations属性定义在PropertyPlaceholderConfigurer的祖父类PropertiesLoaderSupport中,而location只有 setter方法。类似于这样的配置,在spring的源程序中很常见的。
PropertyPlaceholderConfigurer如果在指定的Properties文件中找不到你想使用的属性,它还会在Java的System类属性中查找。
我们可以通过System.setProperty(key, value)或者java中通过-Dnamevalue来给Spring配置文件传递参数。
发表评论
文章已被作者锁定,不允许评论。
-
Sping定时器Quarz
2013-04-08 18:04 706Spring定时器 <?xml version=& ... -
Java Jaxb
2013-04-08 17:56 612JAXB java对象与xml转化 import j ... -
Xifre超时机制
2013-03-27 16:55 697URL _url = new URL("http ... -
Java二维码
2013-01-13 14:37 925二维码的特点: 1. 高密度编码,信息容量大 可容纳 ... -
ActiveMQ5.5安全配置
2013-01-13 13:51 502JMS服务安全配置(生产者和消息者连接时认证) 简单授权方 ... -
jquery的each()详细介绍
2013-01-11 21:34 505jquery的each()详细介绍 each()方法能使DO ... -
js注意事项
2013-01-08 14:16 5561.传统的HTML文档顺序是: ... -
java中instanceof用法
2013-01-06 18:18 764java 中的instanceof 运算符是用来在运行时指出对 ... -
常见DB的 驱动类名 和 URL
2013-01-06 17:22 769MySQL: com.mysql.jdbc.Driver ... -
spring security应用
2013-01-03 14:49 0一、配置文件 <?xml version="1 ... -
Ehcache 整合Spring 使用页面、对象缓存
2013-01-03 12:03 0Ehcache在很多项目中都出现过,用法也比较简单。一般的加些 ... -
StringUtils的isBlank与isEmply
2013-01-03 11:59 10971. public static boolean isEmpt ... -
SQL中如何为表添加外键约束
2013-01-02 18:11 1072定义格式 [CONSTRAINT <约束名>][ ... -
java中Long类型数据必须转化为int才能正确比较
2013-01-02 18:08 2144java中如果有Long类型数据需要比较判断时, 必须转化 ... -
如何使用JPA注解标注一对一的关系
2013-01-02 00:08 1377假设应用场景如下:Node与PageServer是一对一的关系 ... -
Hibernate Annotation注解和关系映射
2013-01-01 23:49 7381. Hibernate Annotation关系 ... -
struts2 中的 addActionError 、addFieldError、addActionMessage的方法
2013-01-01 18:07 874一、 addActionError("错误内容&qu ... -
java使用xfire创建和调用webservices
2013-01-01 10:55 6431.创建工程 File->New->Web S ... -
Spring 2.5.6新特性之packagesToScan
2012-12-28 17:11 767如果你使用早前版本的Spring,又恰好采用了Annotati ... -
Hibernate+spring缓存机制配置
2012-12-28 16:59 686在applicationContext.xml文件中添加以下代 ...
相关推荐
在Spring中,`PropertyPlaceholderConfigurer`是一个非常重要的类,它用于处理属性文件中的占位符,将它们替换为实际的值。这在配置管理中起到了关键作用,特别是在大型分布式系统中,动态配置管理变得尤为重要。...
Spring 中 PropertyPlaceholderConfigurer 的使用 PropertyPlaceholderConfigurer 是 Spring 框架中的一个重要组件,用于加载和管理 Properties 文件。它能够将 Properties 文件中的键值对注入到 Spring 的 bean 中...
在Spring框架中,属性占位符`PropertyPlaceholderConfigurer`是一个重要的工具,用于处理配置文件中的属性值引用。它使得我们可以在XML配置文件中使用占位符`${...}`来引用外部属性文件中的值,从而使应用配置更加...
Spring如何使用PropertyPlaceholderConfigurer读取文件 Spring框架中,PropertyPlaceholderConfigurer是一个非常重要的组件,它可以帮助我们读取配置文件,实现系统的配置信息统一管理。在大型项目中,我们往往会将...
`org.springframework.beans.factory.config.PropertyPlaceholderConfigurer` 是Spring框架中的一个重要组件,主要负责处理配置文件中的占位符替换。这个类是Spring在初始化bean时用来解析和注入环境变量或系统属性...
在Spring框架中,`PropertyPlaceholderConfigurer`是一种特殊的Bean,它被用来处理Spring配置文件中的占位符(placeholder),并将它们替换为具体的值。这些值通常来自外部的属性文件,如`.properties`或`.xml`等。...
PropertyPlaceholderConfigurer示例 3.7.2.2. PropertyOverrideConfigurer示例 3.7.3. 使用FactoryBean定制实例化逻辑 3.8. ApplicationContext 3.8.1. 利用MessageSource实现国际化 3.8.2. 事件 3.8.3. 底层资源的...
在Spring框架中,Bean的配置与管理是其核心功能之一,而通过`PropertyPlaceholderConfigurer`进行属性占位符的配置则是实现动态配置的关键技术。本文将深入解析如何利用`PropertyPlaceholderConfigurer`进行bean配置...
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <value>classpath:application.properties ``` 在这个示例中,`...
<bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <value>classpath:db.properties ${jdbc.driver}" /> ${jdbc.url}" /> ${jdbc....
- **PropertyPlaceholderConfigurer** 和 **PropertyOverrideConfigurer**:用于在运行时动态替换Bean配置中的占位符。 ### 结论 Spring框架以其强大的功能和灵活性,成为Java企业级应用开发的首选框架之一。通过...
在IT行业中,尤其是在开发企业级应用时,...Spring提供了`PropertyPlaceholderConfigurer`和`EncryptablePropertyPlaceholderConfigurer`来实现这个功能。首先,我们需要创建一个解密器类,如下所示: ```xml ...
`PropertyPlaceholderConfigurer`是Spring早期版本中用于注入properties文件中值的bean,而`@ConfigurationProperties`是Spring Boot引入的,更适合现代Spring应用。 使用`PropertyPlaceholderConfigurer`的例子...
6 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 7 8 9 <value>/WEB-INF/jdbc.properties 10 11 12 13 14 它配置了以下功能: 读取...
`PropertyPlaceholderConfigurer`是Spring早期版本中处理属性文件的工具,而`@PropertySource`则是从Spring 3.1引入的新特性,它们都可以用来从外部属性文件中读取值并注入到bean中。 1. `...
<bean class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <value>classpath:jdbc.properties <!-- 配置数据源 --> ${driverClassName}"/> ${url}"/> ${username...
### Spring框架核心概念与开发要点 #### 一、Spring框架概览 **Spring** 是一个开源的轻量级 Java 应用程序框架,主要用于简化企业级应用开发中的复杂性。Spring 框架的核心功能包括依赖注入(Dependency ...
不使用XML定义档进行 Bean设置 Aware 相关介面 BeanPostProcessor BeanFactoryPostProcessor PropertyPlaceholderConfigurer PropertyOverrideConfigurer CustomEditorConfigurer ...
在Spring框架中,读取和使用...在Spring的配置文件中,首先需要定义一个`PropertyPlaceholderConfigurer` bean,这是Spring用来解析Properties文件并将其值注入到其他bean中的关键组件。如示例所示: ```xml ...
Spring默认的`PropertyPlaceholderConfigurer`不直接支持加密的属性文件,但它提供了扩展点,允许我们自定义实现来处理加密后的属性。以下是一种实现方式: 1. 创建一个自定义的`PropertyPlaceholderConfigurer`...