spring中用xml配置构造注入的心得

spring中用xml配置构造注入时,如果 <constructor-arg> 属性都是 ref则不用理会参数顺序

<constructor-arg ref="killer" />

<constructor-arg ref="user" />

<constructor-arg ref="user" />

<constructor-arg ref="killer" />

效果一样(假设只有一个构造方法,参数顺序是(Killer k , User us),这2种写法都ok; 当然如果存在第二个构造方法,参数顺序是(User us , Killer k ),那么第二种就会匹配第二个个构造方法);

但是如果 <constructor-arg> 属性有 value则一定要考虑参数顺序

<constructor-arg value="2"/>  

<constructor-arg ref="killer" />

<constructor-arg ref="killer" />

<constructor-arg value="2"/>  
必须分别对应2个不同的构造方法

原文地址:https://www.cnblogs.com/jichen/p/8918894.html