之前一直使用<context:property-placeholder location="classpath:xx"/>这个标签来加载配置文件,今天见到了利用一个spring自身带的类来加载配置文件的方式:
对于这些配置文件加载问题,将它们全部扔给Spring去解决是最完美的。
在说一下这个类,继承及实现的关系是这个样子的:
其中比较能发挥特点的应该是实现了BeanFactoryPostProcessor类,实际上还是将配置文件交给spring的工厂来进行加载。
原因如下:
总之,BeanFactory很强大。
最后借用一下网上资料的对比:
不论是使用PropertyPlaceholderConfigurer还是通过context:property-placeholder这种方式进行实现,都需要记住,Spring框架不仅仅会读取我们的配置文件中的键值对,而且还会读取Jvm 初始化的一下系统的信息。有时候,我们需要将配置Key定一套命名规则 ,例如:
项目名称.组名.功能名=配置名
project.group.function=001
这种方式可以尽量减少与系统配置信息的冲突!