繁体   English   中英

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

[英]inject default values into Spring bean with annotation

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

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

@Value("myValue")
String test;

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

List<String> tests;

在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>

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

谢谢

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

@Value("#{T(java.util.Arrays).asList('Value 1','Value 2','Value 3')}")

参考:

您可以直接指定默认值,而无需任何注释:

String test = "myValue";

List<String> tests = Arrays.asList("value 1", "value 2", "value 3");

当您希望Spring以与XML文件中相同的方式处理值时,需要@Value ,例如,评估SpEL表达式,解析占位符等。如果您不需要它,您可以在没有注释的情况下分配默认值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM