构造Configuration对象
文章一中说到
最后XmlConfigBulider调用了parseConfiguration方法,传递了一个Xnode对象。
Xnode对象类似于一棵树。
通过getStringAttribute方法去获取根节点的标签对应的属性。
通过evalNode方法传递每个子标签名去获取子节点Xnode。
private void parseConfiguration(XNode root) {
try {
//XNode从properties标签开始解析,生成一个子Xnode,传递给propertiesElement方法
propertiesElement(root.evalNode("properties"));
Properties settings = settingsAsProperties(root.evalNode("settings"));
loadCustomVfs(settings);
loadCustomLogImpl(settings);
typeAliasesElement(root.evalNode("typeAliases"));
pluginElement(root.evalNode("plugins"));
objectFactoryElement(root.evalNode("objectFactory"));
objectWrapperFactoryElement(root.evalNode("objectWrapperFactory"));
reflectorFactoryElement(root.evalNode("reflectorFactory"));
settingsElement(settings);
// read it after objectFactory and objectWrapperFactory issue #631
environmentsElement(root.evalNode("