velocity源码分析:初始化之配置文件

之前在“velocity源码分析:velocity初始化”文章中粗略地介绍了velocity整体的初始化过程,包括各个系统的初始化,本文主要介绍配置文件初始化。

RuntimeInstance.java 代码:

private void initializeProperties() { /* * Always lay down the default properties first as * to provide a solid base. */ if (configuration.isInitialized() == false) { setDefaultProperties(); } if( overridingProperties != null) { configuration.combine(overridingProperties); } }

RuntimeInstance.initializeProperties()代码比较简单,先读取默认配置到configuration中,再根据通过外部初始化,如果通过外部初始化,用外部初始化文件替换原先的配置;如果是不同,就新增。


看几个代码调用点来了解一下和编码的调用关系:

Velocity初始化:

Velocity.init(propsFilename) -> RuntimeSingleton.init(propsFilename); -> new RuntimeInstance().init( configurationFile ); -> setProperties(new ExtendedProperties(configurationFile)); -> overridingProperties = p;

特点:

1.默认初始化

2.增量初始化

3.动态初始化

至此:RuntimeInstance中:

private ExtendedProperties configuration = new ExtendedProperties();

初始化好了



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值