如何从 Spring 配置中读取属性片段

How to read properties fragment from Spring configuration

是否可以通过@Value (Spring 5)读取数组片段?

像这样:

输入 data.properties :

list.numbers=1,2,3

阅读

@Value("${list.numbers[0]}")
int firstNumber;

输出

firstNumber=1

可以拆分得到第一个元素

@Value("#{'${list.numbers}'.split(',')[0]}")
int firstNumber;

很久以前,我使用了带有 XML 配置的 bean 注入。 您可以阅读 that blog article 并使用 spring-corespring-beansspring-context-support 依赖项。

在下面,您将在 bean 列表中找到带有 <bean ref="beanListItemId">(此处:song1song2 等)的 bean 注入的 XML 配置(这里的列表容器是album):

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="song1" class="org.kodejava.spring.core.Song">
        <property name="title" value="I Saw Her Standing There" />
        <property name="writer" value="Beatles" />
    </bean>

    <bean id="song2" class="org.kodejava.spring.core.Song">
        <property name="title" value="Misery" />
        <property name="writer" value="Beatles" />
    </bean>

    <bean id="song3" class="org.kodejava.spring.core.Song">
        <property name="title" value="Anna (Go to Him)" />
        <property name="writer" value="Beatles" />
    </bean>


    <bean id="album" class="org.kodejava.spring.core.Album">
        <property name="title" value="Please Please Me" />
        <property name="year" value="1963" />
        <property name="songs">
            <list>
                <ref bean="song1" />
                <ref bean="song2" />
                <ref bean="song3" />
            </list>
        </property>
    </bean>

</beans>