Heim >Java >javaLernprogramm >Wie kann ich mithilfe der @Value-Annotation von Spring eine Liste von Zeichenfolgen aus einer Eigenschaftendatei in eine Java-Klasse laden?

Wie kann ich mithilfe der @Value-Annotation von Spring eine Liste von Zeichenfolgen aus einer Eigenschaftendatei in eine Java-Klasse laden?

Barbara Streisand
Barbara StreisandOriginal
2024-12-10 07:25:12594Durchsuche

How Can I Load a List of Strings from a Properties File into a Java Class Using Spring's @Value Annotation?

Laden einer Liste aus einer Eigenschaftendatei mit der @Value-Annotation von Spring

In Java-Anwendungen das Lesen einer Werteliste aus einer Eigenschaftendatei und das Laden Das Einfügen in ein Klassenfeld kann mithilfe der @Value-Annotation von Spring effizient erreicht werden. Dadurch können Entwickler ein Feld in einer Java-Klasse deklarieren und es automatisch mit Werten aus einer Eigenschaftendatei füllen.

Um eine Liste von Zeichenfolgen aus einer Eigenschaftendatei in ein Feld namens myList zu laden, kann die folgende Syntax verwendet werden :

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

Diese Annotation weist Spring an, den Wert aus der Eigenschaft my.list.of.strings in der Eigenschaftendatei zu laden und das Feld myList mit der Liste von zu füllen Saiten. Die Eigenschaftendatei sollte den folgenden Eintrag enthalten:

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

Um mithilfe der XML-Konfiguration einen ähnlichen Effekt zu erzielen, kann eine benutzerdefinierte List-Bean erstellt und in der Java-Klasse referenziert werden. Die Verwendung der @Value-Annotation bietet jedoch eine bequeme und übersichtliche Möglichkeit, Eigenschaftswerte direkt in Felder einzufügen, sodass keine manuelle Bean-Erstellung erforderlich ist.

Umgang mit durch Kommas getrennten Listen

Da die @Value-Annotation einen einzelnen Zeichenfolgenwert erwartet, muss sie geändert werden, um durch Kommas getrennte Listen zu verarbeiten. Um die Zeichenfolge in eine Liste von Zeichenfolgen aufzuteilen, kann Spring Expression Language (SpEL) verwendet werden. Die folgende geänderte Syntax wandelt die durch Kommas getrennte Zeichenfolge in eine Liste um:

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

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe der @Value-Annotation von Spring eine Liste von Zeichenfolgen aus einer Eigenschaftendatei in eine Java-Klasse laden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn