Maison > Java > javaDidacticiel > Comment puis-je injecter des propriétés dans des beans Spring configurés avec des annotations ?

Comment puis-je injecter des propriétés dans des beans Spring configurés avec des annotations ?

Patricia Arquette
Libérer: 2024-11-10 14:39:02
original
1010 Les gens l'ont consulté

How can I inject properties into Spring beans configured with annotations?

Injection de propriétés dans un bean Spring configuré avec des annotations

Pour injecter des propriétés dans un bean Spring configuré à l'aide d'annotations, vous pouvez tirer parti de la prise en charge EL dans Spring 3. Prenons l'exemple suivant :

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

    @Value("#{systemProperties.databaseName}")
    public void setDatabaseName(String dbName) { ... }
}
Copier après la connexion

Dans cet exemple, systemProperties est un objet implicite qui donne accès aux propriétés système, vous permettant d'injecter la propriété databaseName dans votre bean PersonDaoImpl.

De même, vous pouvez référencer une autre propriété du bean en utilisant EL :

@Value("#{strategyBean.databaseKeyGenerator}")
public void setKeyGenerator(KeyGenerator kg) { ... }
Copier après la connexion

Où strategyBean est le nom du bean cible.

Pour l'injection de propriété à partir d'un objet Properties :

@Value("#{myProperties['github.oauth.clientId']}")
private String githubOauthClientId;
Copier après la connexion

Ici, myProperties est un bean qui expose un objet Properties. Vous pouvez accéder directement aux propriétés en utilisant EL dans une définition de champ.

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