NutzCN Logo
问答 Ioc注入Map对象时,key和value的映射如何处理?
发布于 2601天前 作者 qq_5c3d1d85 2430 次浏览 复制 上一个帖子 下一个帖子
标签:

<bean id="service1" class="com.test.service.Service1"> <property name="name" value="abc"/> <property name="age" value="123"/> </bean> <bean id="balance" class="com.test.balance.Balance"> <property name="name" value="abc"/> <property name="age" value="123"/> </bean> <!-- 客户端调用 --> <bean id="client" class="com.test.client.Client"> <property name="balanceConfig"> <map> <entry key-ref="service1" value-ref="balance"/> </map> </property> </bean>

上面是spring的配置,我要把它转换为nutz的js配置,请问 client中如何处理map中key和value的ref映射?

5 回复

文档有的

var ioc ={
    dao :{
        type : xxxxxxx,
        fields :{
                 somemapfield : { abc : 123, def: 456}
        }
   }
}

谢谢 ,我先试一下

@wendal
可能我没有把问题描述清楚,我主要是想请教map的key如果是一个对象的话,如何映射?我试了下面的方式,js解析错误
balanceConfig是一个Map,key是对象引用,value也是对象:
Map<Service, Balance> balanceConfig = new HashMap<>();

client: {
    	type: "com.test.client.Client",
    	fields: {
    		balanceConfig: {
    			{refer:"service1"}:{refer:"balance1"},
    			{refer:"service2"}:{refer:"balance2"},
    			{refer:"service3"}:{refer:"balance3"},
    		}
    	}
    }

只支持key类型是字符串

可以变通一下,注入ioc容器和字符串形式的key-value,在create事件的时候转换一下

添加回复
请先登陆
回到顶部