Spring 梳理-使用<context:property-placeholder>标签导入多个properties文件
使用<context:property-placeholder>标签导入多个properties文件
在Spring中的xml中使用<context:property-placeholderlocation>标签导入配置文件时,想要导入多个properties配置文件,如下:
<context:property-placeholder location="classpath:db.properties " />
<context:property-placeholder location="classpath:db2.properties " />
结果发现不行,第二个配置文件始终读取不到,后来发现<context:property-placeholder>标签在Spring配置文件中只能存在一份
Spring容器是采用反射扫描的发现机制,通过标签的命名空间实例化实例,当Spring探测到容器中有一个org.springframework.beans.factory.config.PropertyPlaceholderCVonfigurer的Bean就会停止对剩余PropertyPlaceholderConfigurer的扫描,即只能存在一个实例。
<context:property-placeholder
       location=""
       file-encoding=""
       ignore-resource-not-found=""
       ignore-unresolvable=""
       properties-ref=""
       local-override=""
       system-properties-mode=""
       order=""
/>
那如果有多个配置文件怎么办呢?那就多个文件之间以“,”分隔,如下:
<context:property-placeholderlocation="classpath:db.properties,classpath:monitor.properties" />
值得注意的是:多个配置文件将依次加载,如果后一个文件中有和前面某一个文件中属性名是相同的,最终取的值是后加载的值。
#jdbc配置
driverClassName=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/test
username=root
password=root
<bean id="dataSource" class="org.springframework,jdbc,datasource.DriverManagerDataSource">
<property name="driverClassName" value="${driverClassName}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</bean>
Spring 梳理-使用<context:property-placeholder>标签导入多个properties文件的更多相关文章
- Spring 4.0.2 学习笔记(2) - 自动注入及properties文件的使用
		
接上一篇继续, 学习了基本的注入使用后,可能有人会跟我一样觉得有点不爽,Programmer的每个Field,至少要有一个setter,这样spring配置文件中才能用<property> ...
 - spring入门(二)【加载properties文件】
		
在开发过程当中需要用到配置信息,这些信息不能进行硬编码,这时配置文件是一个比较好的方式,java提供了properties格式的文件,以键值对的方式保存信息,在读取的时候通过键获得键对应的值,spri ...
 - Spring加载properties文件的两种方式
		
在项目中如果有些参数经常需要修改,或者后期可能需要修改,那我们最好把这些参数放到properties文件中,源代码中读取properties里面的配置,这样后期只需要改动properties文件即可, ...
 - Spring 配置文件中将common.properties文件外置
		
将配置文件的路径从项目中移出来 1. 在springApplicationContext中 <context:property-placeholder location="file:$ ...
 - spring错误:<context:property-placeholder>:Could not resolve placeholder XXX in string value XXX
		
spring同时集成redis和mongodb时遇到多个资源文件加载的问题 这两天平台中集成redis和mongodb遇到一个问题 单独集成redis和单独集成mongodb时都可以正常启动程序,但是 ...
 - spring配置文件引入properties文件:<context:property-placeholder>标签使用总结
		
一.问题描述: 1.有些参数在某些阶段中是常量,比如: (1)在开发阶段我们连接数据库时的连接url.username.password.driverClass等 (2)分布式应用中client端访问 ...
 - spring in action 学习十一:property placeholder Xml方式实现避免注入外部属性硬代码化
		
这里用到了placeholder特有的一个语言或者将表达形式:${},spring in action 描述如下: In spring wiring ,placeholder values are p ...
 - Spring 配置 Annotation <context:annotation-config> 和 <context:component-scan>标签的诠释及区别
		
Spring 开启Annotation <context:annotation-config> 和 <context:component-scan>诠释及区别 <cont ...
 - 应用中有多个Spring Property PlaceHolder导致@Value只能获取到默认值
		
背景 工作中负责的一套计费系统需要开发一个新通知功能,在扣费等事件触发后发送MQ,然后消费MQ发送邮件或短信通知给客户.因为有多套环境,测试时需要知道是从哪套环境发出的邮件,又不想维护多套通知模板,因 ...
 
随机推荐
- 检查python标识符是否有效
 - 【CF1137C】 Museums Tour 拆点+缩点
			
https://codeforc.es/contest/1137/problem/C # 题意 给你n个点,每个点有k天博物馆开放时间的安排表. 有m条单向道路,走过一条边需要一个晚上,经过后就是第二 ...
 - HDU-3038How Many Answers Are Wrong权值并查集
			
How Many Answers Are Wrong 题意:输入一连串的区间和,问和前面的矛盾个数: 思路:我在做专题,知道是并查集,可是还是不知道怎么做,学了一下权值并查集和大佬的优秀思路,感觉回了 ...
 - Codefroces 366 D Dima and Trap Graph (最短路)
			
Dima and Trap Graph 题意:Dima和Inna越来越喜欢对方,但是Dima的室友缺很没有热情出去玩,然后Dima就把他室友Seryozha骗进了陷阱里.现在Seryozha想要从陷阱 ...
 - CF992B Nastya Studies Informatics 数学(因子) 暴力求解  第三道
			
Nastya Studies Informatics time limit per test 1 second memory limit per test 256 megabytes input st ...
 - Python---网络爬虫初识
			
1. 网络爬虫介绍 来自wiki的介绍: 网络爬虫(英语:web crawler),也叫网上蜘蛛(spider),是一种用来自动浏览万维网的网络机器人. 但是我们在写网络爬虫时还要注意遵守网络规则,这 ...
 - 3.python之文件操作
			
一.文件操作初识 f = open('文件路径', '编码方式', '操作方式') # 注意里面所有内容,需加引号 ” 打开一个文件需要知道的内容有: 文件路径:c:\文件.txt(绝对路径和相对路径 ...
 - 【Offer】[60] 【n个骰子的点数】
			
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S.输入n,打印出s的所有可能的值出现的概率. [牛客网刷题地址]无 思路分析 递归的方 ...
 - 【Offer】[55-1] 【二叉树的深度】
			
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 牛客网 ...
 - Spring Boot2 系列教程(四)理解Spring Boot 配置文件 application.properties
			
在 Spring Boot 中,配置文件有两种不同的格式,一个是 properties ,另一个是 yaml . 虽然 properties 文件比较常见,但是相对于 properties 而言,ya ...