如何使用注释对Spring执行基于构造函数的依赖注入?

Art*_*s M 3 java spring dependency-injection spring-annotations constructorargument

好的,所以如果我需要在构造函数中放入一些原始值,我该怎么做?

    @Autowired
public CustomBean(String name, @Qualifier("SuperBean") SuperBean superBean) {
    super();
    this.superBean = superBean;
    this.name = name;
}
Run Code Online (Sandbox Code Playgroud)

例如,我在这里定义superBean有限定符"SuperBean",但我也想知道如何使用注释在这里设置名称值?

我知道有可能使用xml配置,但我想知道如何使用注释执行此操作:

<bean id="CustomXmlBean" class="org.arturas.summerfav.beans.CustomXmlBean">
        <constructor-arg name="name" type="String" value="The Big Custom XML Bean" />
        <constructor-arg>
            <bean id="SuperBean" class="org.arturas.summerfav.beans.SuperBean" />
        </constructor-arg>
    </bean>
Run Code Online (Sandbox Code Playgroud)

那么我如何为String,int和其他泛型类型输入值?

San*_*osh 7

这是一种方法:

@Component 
public class YourBean { 
    @Autowired
    public YourBean(@Value("${prop1}") String arg1, @Value("${prop2}") String arg2) { 
        // rest of the code
    } 
} 
Run Code Online (Sandbox Code Playgroud)