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("#{
@Value("#{
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"); } }
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!