Maison > Java > javaDidacticiel > Comment injecter des valeurs de propriété dans des Spring Beans configurés via des annotations ?

Comment injecter des valeurs de propriété dans des Spring Beans configurés via des annotations ?

Barbara Streisand
Libérer: 2024-11-08 09:25:02
original
611 Les gens l'ont consulté

How to Inject Property Values into Spring Beans Configured via Annotations?

Injection de propriétés pour les beans Spring configurés via des annotations

Les beans Spring détectés via des annotations présentent un défi lorsqu'il s'agit d'injecter des valeurs de propriété. Bien que PropertyPlaceholderConfigurer puisse charger des propriétés à partir d'un fichier externe, le simple fait de définir la valeur d'une propriété de bean dans la configuration XML ne fonctionnera pas pour ces beans.

Pour résoudre ce problème, Spring 3 a introduit la prise en charge EL, permettant l'injection de valeurs. dynamiquement. En particulier :

Valeur injectée avec expressions EL

@Value("#{.} permet injecter directement la valeur d'une propriété à partir d'un object.
@Value("#{.} permet également d'injecter une propriété du bean spécifié.
Par exemple, pour injecter le "results.max " à partir d'un fichier de propriétés externe :

@Repository("personDao")
public class PersonDaoImpl extends AbstractDaoImpl implements PersonDao {

    @Resource(name = "propertyConfigurer")
    protected void setProperties(PropertyPlaceholderConfigurer ppc) {
        maxResults = ppc.getProperties().getProperty("results.max"); 
    }
}
Copier après la connexion

EL fournit également des options plus complexes pour manipuler les valeurs, récupérer les références du bean et résolution des espaces réservés.

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal