Top ↑
无匹配结果,请重新输入
别名
Jul 10, 2017 10:38:44 AM
作者: zozoh

如何定义一个别名

一个ioc bean,通常只有一个名字, 然而,在某些场景下,需要两个名称均指向同一个bean.

例如nutzmore中的插件,均以conf这个名称取PropertiesProxy的实例,而你的项目中已经定义为config,而且改起来麻烦, 那这个时候,你就需要按下面的方式,定义一个影子bean了, 间接达到了别名的效果

var ioc = {
    // 原有配置
    config : {
        type : "org.nutz.ioc.impl.PropertiesProxy",
        fields : {
            paths : ["custom/"]
        }
    },
    // 创建别名 
    conf : {
        type : "org.nutz.ioc.impl.PropertiesProxy"
        fatcoty : "org.nutz.ioc.Iocs#self",
        args : [{refer:"config"}]
    }
};

原理是啥? Iocs的self方法是静态方法,且只有一个参数,而内容,也就是会返回参数本身.

public static Object self(Object obj) {
    return obj;
}

本页面的文字允许在知识共享 署名-相同方式共享 3.0协议GNU自由文档许可证下修改和再使用。