Zookeeper迁移第一步

Zookeeper迁移第一步:统一读取配置文件的入口

(1)之前读取配置文件的入口

(a)直接通过java.util.Properties 类读取file

 

(b)通过类:org.springframework.beans.factory.config.PropertyPlaceholderConfigurer

在spring MVC配置文件中:

 

调用方法:

 

 

(c)

 

(2)如何区分不同的环境

通过sed命令

比如测试环境的域名是:test-aaa.bbb.com

线上部署时,就使用Linux sed命令把test-aaa.bbb.com 替换为aaa.bbb.com



也就是说,在部署时,会动态的修改源代码(java文件,html,js等) 

 

(3)如何统一入口

不同的环境通过spring MVC读取环境变量来区分

之前是通过jekens任务来区分,不同的jekens任务执行不同的shell脚本.

我们现在需要通过spring MVC通过环境变量,来加载不同的properties文件

 

注意:环境变量sysType需要手动在linux系统设置

(4)依赖配置文件的类如何初始化

通过被动的方式,比如我们有一个配置类Configuration2,里面的配置原先是在static 语句块中读取file然后设置的.

现在改为通过spring MVC 来加载配置文件,所以存在一个问题:

Configuration2 初始化的时候,配置文件不一定读取完成,而且Configuration2 是不受spring MVC容器控制的,

因为Configuration2 不用实例化

所以我们的做法是:

在配置文件加载完成之后,主动去初始化Configuration2 中的配置项,比如域名.

(5)变量初始化的两种方式

(a)类加载的时候就初始化

这是原先老的方法

 

 

(b)异步加载

在时机成熟的时候加载,但是肯定保证在调用之前

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值