您的位置:首页 > Web前端 > Node.js

MyBatis-3.4.2-源码分析2:解析XML之settingsAsProperties(root.evalNode("settings"))

2017-03-26 00:00 731 查看
下面讲解settings的解析过程

private Properties settingsAsProperties(XNode context) {
// 开始解析settings块
// 判断是否为null
if (context == null) {
return new Properties();
}
// 继续处理
Properties props = context.getChildrenAsProperties();
//
// Check that all settings are known to the configuration class
// 执行到这里
MetaClass metaConfig = MetaClass.forClass(Configuration.class, localReflectorFactory);
//构造MetaClass完毕
//遍历props的k/v
for (Object key : props.keySet()) {
//保证设置的k必须在Configuration里存在,也就是是它的1个字段
if (!metaConfig.hasSetter(String.valueOf(key))) {
throw new BuilderException(
"The setting " + key + " is not known.  Make sure you spelled it correctly (case sensitive).");
}
}
//返回
return props;
}

loadCustomVfs(settings);

上面这行不知道干嘛的,暂时跳过。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  MyBatis
相关文章推荐