javascript
Spring BeanFactory 容器
轉載自??Spring BeanFactory 容器
Sping 的 BeanFactory 容器
這是一個最簡單的容器,它主要的功能是為依賴注入 (DI) 提供支持,這個容器接口在 org.springframework.beans.factory.BeanFactory 中被定義。 BeanFactory 和相關的接口,比如BeanFactoryAware、 DisposableBean、InitializingBean,仍舊保留在 Spring 中,主要目的是向后兼容已經存在的和那些 Spring 整合在一起的第三方框架。
在 Spring 中,有大量對 BeanFactory 接口的實現。其中,最常被使用的是?XmlBeanFactory?類。這個容器從一個 XML 文件中讀取配置元數據,由這些元數據來生成一個被配置化的系統或者應用。
在資源寶貴的移動設備或者基于 applet 的應用當中, BeanFactory 會被優先選擇。否則,一般使用的是 ApplicationContext,除非你有更好的理由選擇 BeanFactory。
例子:
假設我們已經安裝 Eclipse IDE,按照下面的步驟,我們可以創建一個 Spring 應用程序。
| 1 | 創建一個名為?SpringExample?的工程并在?src?文件夾下新建一個名為?com.tutorialspoint?文件夾。 | 
| 2 | 點擊右鍵,選擇?Add External JARs?選項,導入 Spring 的庫文件,正如我們在?Spring Hello World Example?章節中提到的導入方式。 | 
| 3 | 在?com.tutorialspoint?文件夾下創建?HelloWorld.java?和?MainApp.java兩個類文件。 | 
| 4 | 在?src?文件夾下創建 Bean 的配置文件?Beans.xml | 
| 5 | 最后的步驟是創建所有 Java 文件和 Bean 的配置文件的內容,按照如下所示步驟運行應用程序。 | 
下面是文件?HelloWorld.java?的內容:
package com.tutorialspoint; public class HelloWorld {private String message;public void setMessage(String message){this.message = message;}public void getMessage(){System.out.println("Your Message : " + message);} }下面是文件?MainApp.java?的內容:
package com.tutorialspoint; import org.springframework.beans.factory.InitializingBean; import org.springframework.beans.factory.xml.XmlBeanFactory; import org.springframework.core.io.ClassPathResource; public class MainApp {public static void main(String[] args) {XmlBeanFactory factory = new XmlBeanFactory(new ClassPathResource("Beans.xml"));HelloWorld obj = (HelloWorld) factory.getBean("helloWorld");obj.getMessage();} }在主程序當中,我們需要注意以下兩點:
-  
第一步利用框架提供的?XmlBeanFactory()?API 去生成工廠 bean 以及利用?ClassPathResource()?API 去加載在路徑 CLASSPATH 下可用的 bean 配置文件。XmlBeanFactory()?API 負責創建并初始化所有的對象,即在配置文件中提到的 bean。
 - 第二步利用第一步生成的 bean 工廠對象的?getBean()?方法得到所需要的 bean。 這個方法通過配置文件中的 bean ID 來返回一個真正的對象,該對象最后可以用于實際的對象。一旦得到這個對象,就可以利用這個對象來調用任何方法。
 
下面是配置文件?Beans.xml?中的內容:
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework.org/schema/beanshttp://www.springframework.org/schema/beans/spring-beans-3.0.xsd"><bean id="helloWorld" class="com.tutorialspoint.HelloWorld"><property name="message" value="Hello World!"/></bean></beans>如果你已經完成上面的內容,接下來,讓我們運行這個應用程序。如果程序沒有錯誤,你將從控制臺看到以下信息:
Your Message : Hello World!總結
以上是生活随笔為你收集整理的Spring BeanFactory 容器的全部內容,希望文章能夠幫你解決所遇到的問題。
                            
                        - 上一篇: Spring IoC 容器
 - 下一篇: 9 Best Bakery Logos