Home >Java >javaTutorial >How to Inject a List from a .properties File into a Spring Bean Using @Value?

How to Inject a List from a .properties File into a Spring Bean Using @Value?

DDD
DDDOriginal
2024-12-06 12:11:10604browse

How to Inject a List from a .properties File into a Spring Bean Using @Value?

Accessing a List from .Properties File via @Value Annotation

In Spring, you can easily load a list of values from a .properties file and inject it into your class using the @Value annotation. Let's delve into how you can achieve this:

Firstly, ensure that your .properties file contains the list of values separated by commas:

my.list.of.strings=ABC,CDE,EFG

To load this list directly into a private field of your class, you can use the following code:

@Value("${my.list.of.strings}")
private List<String> myList;

This syntax utilizes Spring's Expression Language (EL) to access the property my.list.of.strings from the .properties file. When the class is initialized, Spring automatically populates myList with the values from the file.

Alternatively, you can define the list as a bean in your Spring configuration file:

<bean name="list">
  <list>
    <value>ABC</value>
    <value>CDE</value>
    <value>EFG</value>
  </list>
</bean>

However, using a .properties file provides greater flexibility and allows you to easily modify the list without recompiling your code.

In summary, you can conveniently load a list from a .properties file into your Spring-managed class using the @Value annotation and Spring's EL, providing a robust and flexible approach for accessing configuration data.

The above is the detailed content of How to Inject a List from a .properties File into a Spring Bean Using @Value?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn