Maison > Java > javaDidacticiel > Comment injecter une liste séparée par des virgules à partir d'un fichier de propriétés dans un Spring Bean à l'aide de @Value ?

Comment injecter une liste séparée par des virgules à partir d'un fichier de propriétés dans un Spring Bean à l'aide de @Value ?

DDD
Libérer: 2024-12-04 12:53:11
original
650 Les gens l'ont consulté

How to Inject a Comma-Separated List from a Properties File into a Spring Bean Using @Value?

Lecture d'une liste à partir du fichier de propriétés à l'aide de Spring Annotation @Value

Problème :

Vous souhaitez charger une liste de valeurs à partir d’un fichier de propriétés et injectez-le directement dans votre classe à l’aide de l’annotation Spring @Value. Les valeurs sont représentées sous forme de liste séparée par des virgules.

Réponse :

  1. Utilisation du langage d'expression Spring (EL)

Pour charger une liste de valeurs à l'aide de Spring EL, annotez un champ avec @Value et spécifiez l'expression EL à extraire les valeurs :

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

Cette expression utilise la fonction split() pour séparer les valeurs du fichier de propriétés dans une liste.

  1. Utilisation du Spring Configuration Bean

Vous pouvez également définir un bean dans votre fichier de configuration Spring et l'injecter en utilisant @Value :

<bean name="list">
    <list>
        <value>ABC</value>
        <value>CDE</value>
        <value>EFG</value>
    </list>
</bean>
Copier après la connexion

Ensuite, dans votre classe :

@Value("${list}")
private List<String> myList;
Copier après la connexion

Remarque : Assurez-vous que votre fichier de propriétés est correctement chargé dans le contexte de votre application Spring.

Option de code personnalisé :

Si vous souhaitez que cela fonctionne sans code personnalisé, vous peut créer un PropertySource personnalisé qui lit la liste à partir du fichier de propriétés. Cependant, cette option n'est actuellement pas prise en charge par défaut.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal