在日常项目中通常会使用Properties文件来配置项目中的一些配置化属性,但是由于Properties是写在项目中的导致每当更改配置时都需要更新代码重新发布,另一方面类似一些密码,密匙一类的配置写在代码中也十分的不安全,所以我们可以通过继承PropertyPlaceholderConfigurer来实现一些结构化配置的自定义。
配置管理中心如何实现
简单实现通过数据库保存配置数据,同时加入缓存,条件充足可以多加两层缓存保证只要不是所有层级都挂掉就可以访问,一切从简此处直说原理,我们可以直接将查询逻辑写在我们的项目中,先从缓存中查询,查询失败从二级缓存或数据库查询。配置数据的管理可以开发一个简单的管理平台只要实现数据库更删改查和缓存同步就可以了
PropertyPlaceholderConfigurer的工作原理
通常我们在项目中的配置采用下述的方式进行配置,相关的结构化配置都写在Properties文件中通过${name}的方式来获取配置属性。
<bean id="propertyConfigurer"class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
<property name="locations">
<list>
<value>classpath*:/conf/**/dubbo.properties</value>
<value>classpath*:/conf/**/image.properties</value>
<value>clas