您的位置:首页 > 编程语言 > Java开发

4.1 spring-alias 标签的解析;

2014-04-06 23:47 281 查看
  对于之前漫长的,最核心的Bean标签的解析就没什么好讲的了,

首先看看使用方法:

<bean id="car" name="cat0" class="entity.CarFactoryBean">
<property name="carInfo" value="超级跑车,400,2000000" />
</bean>
<alias name="car" alias="cat1,cat2" />
<alias name="car" alias="cat3,cat4" />


解析过程如下:

/**
* Process the given alias element, registering the alias with the registry.
*/
protected void processAliasRegistration(Element ele) {
// 获取beanName
String name = ele.getAttribute(NAME_ATTRIBUTE);
// 获取alias
String alias = ele.getAttribute(ALIAS_ATTRIBUTE);
boolean valid = true;
if (!StringUtils.hasText(name)) {
getReaderContext().error("Name must not be empty", ele);
valid = false;
}
if (!StringUtils.hasText(alias)) {
getReaderContext().error("Alias must not be empty", ele);
valid = false;
}
if (valid) {
try {
// 注册alias
getReaderContext().getRegistry().registerAlias(name, alias);
}
catch (Exception ex) {
getReaderContext().error(
"Failed to register alias '" + alias + "' for bean with name '"
+ name + "'", ele, ex);
}
// 通知别名监听器
getReaderContext().fireAliasRegistered(name, alias, extractSource(ele));
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: