comment référencer un bean d'un autre fichier xml au printemps
J'ai un Printemps bean défini dans un fichier xml. Je veux faire référence à partir d'un autre fichier xml. Comment puis-je faire?
Vous devez vous connecter pour publier un commentaire.
Vous avez deux options:
Importation
Inclure dans le
ApplicationContext
ConstructionFaire les deux fichiers une partie de votre
ApplicationContext
lorsque vous créez => alors aucune importation n'est nécessaire.Par exemple, si vous avez besoin d'elle au cours du test:
Dans le cas d'une application web, vous feriez dans
web.xml
:Si c'est une application indépendante, bibliothèque, etc.. vous chargez votre
ApplicationContext
comme:web.xml
morceau déclenche une erreur. Unparam-value
semble être autorisé que dans la place.Il suffit d'importer le xml définissant le haricot avec
<import resource="otherXml.xml">
et vous serez en mesure d'utiliser le haricot définition.Vous pouvez utiliser
classpath:
dans leresource
attribut:Voir le "3.18. L'importation de Fèves de Définitions à partir d'Un Fichier Dans un Autre" ce chapitre du Printemps de Référence
Vous référence exactement comme vous le feriez référence à un haricot dans le même fichier XML. Si un ressort contexte est composé de plusieurs fichiers XML, tous les haricots font partie d'un même contexte, et donc de partager un espace de noms unique.
Ou si vous êtes juste de refactoring de grains de plusieurs fichiers à conserver le fichier xml unique de la culture au grand, il suffit de référence de son dossier en cours:
Vous pouvez également aller à ce sujet par le chargement de plusieurs Printemps bean fichiers de configuration dans le code :
Mettre tout le printemps des fichiers xml dans le cadre du projet de chemin de classe:
Cependant, cette mise en œuvre est un manque d'organisation et sujettes à erreur, la meilleure façon devrait être organisé tous vos Printemps bean fichiers de configuration dans un seul fichier XML. Par exemple, créer un
Spring-All-Module.xml
fichier, et d'importer la totalité de Printemps bean fichiers comme ceci :Maintenant, vous pouvez charger un seul fichier xml comme ceci :
Note
Dans Spring3, la solution alternative est d'utiliser JavaConfig @Import.