专门做中式的设计网站,网站做法,官网建设银行,网络推广一般都干啥转载自 Spring 注入内部 Beans
注入内部 Beans
正如你所知道的 Java 内部类是在其他类的范围内被定义的#xff0c;同理#xff0c;inner beans 是在其他 bean 的范围内定义的 bean。因此在 或 元素内 元素被称为内部bean#xff0c;如下所示。
?xml version同理inner beans 是在其他 bean 的范围内定义的 bean。因此在 或 元素内 元素被称为内部bean如下所示。
?xml version1.0 encodingUTF-8?beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsdbean idouterBean class...property nametargetbean idinnerBean class...//property/bean/beans
例子
我们在适当的位置使用 Eclipse IDE然后按照下面的步骤来创建一个 Spring 应用程序
步骤描述1创建一个名称为 SpringExample 的项目并且在创建项目的 src 文件夹中创建一个包 com.tutorialspoint 。2使用 Add External JARs 选项添加所需的 Spring 库解释见 Spring Hello World Example 章节。 option as explained in the chapter.3在 com.tutorialspoint 包中创建Java类TextEditor、SpellChecker 和 MainApp。4在 src 文件夹中创建 Beans 配置文件 Beans.xml。5最后一步是创建的所有Java文件和Bean配置文件的内容并运行应用程序解释如下所示。
这里是 TextEditor.java 文件的内容
package com.tutorialspoint;
public class TextEditor {private SpellChecker spellChecker;// a setter method to inject the dependency.public void setSpellChecker(SpellChecker spellChecker) {System.out.println(Inside setSpellChecker. );this.spellChecker spellChecker;} // a getter method to return spellCheckerpublic SpellChecker getSpellChecker() {return spellChecker;}public void spellCheck() {spellChecker.checkSpelling();}
}
下面是另一个依赖的类文件 SpellChecker.java 内容
package com.tutorialspoint;
public class SpellChecker {public SpellChecker(){System.out.println(Inside SpellChecker constructor. );}public void checkSpelling(){System.out.println(Inside checkSpelling. );}
}
下面是 MainApp.java 文件的内容
package com.tutorialspoint;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class MainApp {public static void main(String[] args) {ApplicationContext context new ClassPathXmlApplicationContext(Beans.xml);TextEditor te (TextEditor) context.getBean(textEditor);te.spellCheck();}
}
下面是使用内部 bean 为基于 setter 注入进行配置的配置文件 Beans.xml 文件
?xml version1.0 encodingUTF-8?beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd!-- Definition for textEditor bean using inner bean --bean idtextEditor classcom.tutorialspoint.TextEditorproperty namespellCheckerbean idspellChecker classcom.tutorialspoint.SpellChecker//property/bean/beans
一旦你创建源代码和 bean 配置文件完成后我们就可以运行该应用程序。如果你的应用程序一切都正常将输出以下信息
Inside SpellChecker constructor.
Inside setSpellChecker.
Inside checkSpelling.