Maison > Java > javaDidacticiel > apprentissage du cadre à ressort (4) assemblage automatique

apprentissage du cadre à ressort (4) assemblage automatique

黄舟
Libérer: 2016-12-29 13:15:30
original
1357 Les gens l'ont consulté

L'injection d'ensemble et l'injection de constructeur sont parfois gênantes lors de la configuration. Par conséquent, afin d'améliorer l'efficacité du développement, le framework fournit des fonctions d'assemblage automatique et simplifie la configuration. Le framework Spring ne prend pas en charge l'assemblage automatique par défaut. Si vous souhaitez utiliser l'assemblage automatique, vous devez modifier l'attribut autowire de la balise dans le fichier de configuration Spring
L'attribut d'assemblage automatique a 6 valeurs facultatives, chacun représentant des significations différentes.

1, byName
Lors de l'obtention de l'objet cible à partir de l'environnement Spring, les attributs de l'objet cible rechercheront dans l'ensemble de l'environnement Spring la valeur de l'attribut id de la balise . S'il y a les mêmes, obtenez cet objet et implémentez l'association.
L'ensemble de l'environnement Spring : signifie rechercher dans tous les fichiers de configuration Spring, l'ID ne peut alors pas être répété.

2, byType
Lors de l'obtention de l'objet cible à partir de l'environnement Spring, les attributs de l'objet cible rechercheront la valeur de l'attribut de classe de la balise taper. S'il y en a les mêmes, obtenez cet objet et implémentez l'association.

Inconvénient : S'il existe plusieurs objets bean du même type, une erreur se produira.
Si l'attribut est un seul type de données, une erreur se produira si plusieurs objets associés sont trouvés.
Si l'attribut est de type tableau ou collection (générique), aucune exception ne se produira si plusieurs objets associés sont trouvés.

3. Constructor
utilise la méthode constructeur pour terminer l'injection d'objets. En fait, il effectue également une recherche d'objets en fonction du type de paramètre de la méthode constructeur, ce qui équivaut à l'utilisation de byType.

4, détection automatique
Sélection automatique : si l'objet n'a pas de méthode de construction sans paramètre, alors la méthode d'assemblage automatique du constructeur est automatiquement sélectionnée pour l'injection de construction. Si l'objet contient un constructeur sans paramètre, la méthode d'assemblage automatique byType est automatiquement sélectionnée pour l'injection setter.
5, non
ne prend pas en charge la fonction d'assemblage automatique

6, par défaut
signifie que la valeur de l'assemblage automatique de la balise de niveau supérieur est utilisée par défaut. S'il existe plusieurs fichiers de configuration, la méthode d'assemblage automatique de chaque fichier de configuration est indépendante.

S'il existe plusieurs fichiers de configuration, la façon de charger le fichier de configuration est la suivante :
1) Vous pouvez spécifier le fichier de configuration global pour inclure les fichiers de sous-configuration, puis charger uniquement le fichier de configuration global . Utilisez la balise d'importation dans le fichier de configuration global applicationContext.xml pour charger le fichier de configuration dans le package de sous-fichiers
code :



ApplicationContextac= newClassPathXmlApplicationContext("applicationContext.xml");
Copier après la connexion

2) Utilisez des astérisques pour faire correspondre plusieurs fichiers à charger, et les noms de fichiers doivent être conformes aux règles. (Recommandé)

3) Vous pouvez utiliser des tableaux comme paramètres pour charger plusieurs fichiers de configuration à la fois
//配置文件的名称
applicationContext.xml
applicationContext-action.xml
applicationContext-service.xml
applicationContext-dao.xml
 
ApplicationContextac =newClassPathXmlApplicationContext("applicationContext*.xml");
Copier après la connexion

String[]files={"applicationContext.xml","applicationContext-test.xml"};               
ApplicationContextac = newClassPathXmlApplicationContext(files);
Copier après la connexion

Remarque : si la fonction d'assemblage automatique et l'assemblage manuel sont utilisés en même temps, l'assemblage automatique ne fonctionnera pas.

Ce qui précède est le contenu de l'assemblage automatique du framework spring learning (4). Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (m.sbmmt.com) !


Étiquettes associées:
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