Problem:
Sie möchten eine Liste von laden Werte aus einer Eigenschaftendatei und fügen Sie sie mithilfe der Spring @Value-Annotation direkt in Ihre Klasse ein. Die Werte werden als durch Kommas getrennte Liste dargestellt.
Antwort:
Um eine Werteliste mit Spring EL zu laden, kommentieren Sie ein Feld mit @Value und geben Sie den EL-Ausdruck an Extrahieren Sie die Werte:
@Value("#{'${my.list.of.strings}'.split(',')}") private List<String> myList;
Dieser Ausdruck verwendet die Funktion split(), um die Werte in der Eigenschaftendatei in eine Liste aufzuteilen.
Alternativ können Sie eine Bean in Ihrer Spring-Konfigurationsdatei definieren und diese mit injizieren @Value:
<bean name="list"> <list> <value>ABC</value> <value>CDE</value> <value>EFG</value> </list> </bean>
Dann in Ihrer Klasse:
@Value("${list}") private List<String> myList;
Hinweis: Stellen Sie sicher, dass Ihre Eigenschaftendatei korrekt in Ihren Spring-Anwendungskontext geladen wird.
Option für benutzerdefinierten Code:
Wenn Sie möchten, dass dies ohne benutzerdefinierten Code funktioniert, Sie können eine benutzerdefinierte PropertySource erstellen, die die Liste aus der Eigenschaftendatei liest. Allerdings wird diese Option derzeit nicht standardmäßig unterstützt.
Das obige ist der detaillierte Inhalt vonWie füge ich mithilfe von @Value eine durch Kommas getrennte Liste aus einer Eigenschaftendatei in ein Spring Bean ein?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!