使用注释将默认值注入Spring bean

RoD*_*RoD 3 java spring annotations javabeans

我想使用注释为bean中的列表设置默认值.

例如,如果它不是列表,您可以执行以下操作:

@Value("myValue")
String test;
Run Code Online (Sandbox Code Playgroud)

但是,在我的情况下,我想为List of String提供默认值.

List<String> tests;
Run Code Online (Sandbox Code Playgroud)

在XML中,它是这样的:

<bean id="beanId" class="class...">
    <property name="tests">
        <list>
            <value>value 1</value>
            <value>value 2</value>
            <value>value 3</value>
        </list>
    </property>
</bean>
Run Code Online (Sandbox Code Playgroud)

我想知道是否有现有的注释,或者我是否需要创建注释?

谢谢

Sea*_*oyd 7

@Value 理解表达式语言,所以你可以使用任意方法调用,虽然语法可能会变得丑陋,如下所示:

@Value("#{T(java.util.Arrays).asList('Value 1','Value 2','Value 3')}")
Run Code Online (Sandbox Code Playgroud)

参考: