真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Spring中IOC容器的示例分析

這篇文章將為大家詳細講解有關(guān)Spring中IOC容器的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)公司公司2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元福海做網(wǎng)站,已為上家服務(wù),為福海各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220

一.Spring的IOC容器概述

Spring的IOC的過程也被稱為依賴注入(DI),那么對象可以通過構(gòu)造函數(shù)參數(shù),工廠方法的參數(shù)或在工廠方法構(gòu)造或返回的對象實例上設(shè)置的屬性來定義它們的依賴關(guān)系,然后容器 在創(chuàng)建bean時注入這些依賴關(guān)系。Spring實現(xiàn)IOC容器的基礎(chǔ)是org.springframework.be和org.springframework.context。  


 
核心接口BeanFactory 接口提供了一種能夠管理任何類型對象的高級配置機制。 ApplicationContext 是一個子接口BeanFactory。它增加了與Spring的AOP功能更容易的集成; BeanFactory提供了配置框架和基本功能,并ApplicationContext增加了更多的企業(yè)特定功能。
在Spring中,構(gòu)成應(yīng)用程序的骨干并由Spring IoC 容器管理的對象稱為bean。bean是一個實例化,組裝并由Spring IoC容器管理的對象。
 
Spring如何工作的視圖:
Spring中IOC容器的示例分析 

二.Spring的IOC的方式

Spring容器xml配置管理
通常是多個bean定義組成?;赬ML的配置元數(shù)據(jù)將這些bean配置為頂層元素內(nèi)的元素
如下圖提供spring的官方的配置文件模板(素材來源www.spring.io)
 


    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
        http://www.springframework.org/schema/beans/spring-beans.xsd">
 
    
        
    
 
    
        
    
 
    
 

 

1.默認(rèn)構(gòu)造器

當(dāng)你通過構(gòu)造函數(shù)的方法創(chuàng)建一個bean時,所有的普通類都可以被Spring使用和兼容。也就是說,正在開發(fā)的類不需要實現(xiàn)任何特定的接口或以特定的方式編碼。只需指定bean類就足夠了。但是,根據(jù)您用于特定bean的IoC類型,需要一個默認(rèn)(空)構(gòu)造函數(shù)。
 
使用基于XML的配置元數(shù)據(jù),您可以指定您的bean類如下:
 


 

 
其中 bean 中的class 是我們交于spring初始化的bean的全路徑。

2.靜態(tài)工廠

在定義使用靜態(tài)工廠方法創(chuàng)建的bean時,可以使用該class 屬性來指定包含static工廠方法的類和factory-method指定工廠方法本身的名稱的屬性。你應(yīng)該可以調(diào)用這個方法(使用后面描述的可選參數(shù))并返回一個實例化對象,這個實例化對象隨后被視為是通過構(gòu)造函數(shù)創(chuàng)建的。用于這種bean定義的就是被稱為靜態(tài)工廠方式創(chuàng)建。
靜態(tài)工廠的定義

public class ClientService {
 
private static ClientService clientService = new ClientService();
 
    private ClientService() {}
 
    public static ClientService createInstance() {
        return clientService;
    }
}

 
配置xml

    class="examples.ClientService"
    factory-method="createInstance"/>

這樣的spring框架在調(diào)用IOC實例化的使用是通過反射創(chuàng)建 調(diào)用靜態(tài)工廠的中的static方法去創(chuàng)建對象。此時在創(chuàng)建的對象的是在靜態(tài)方法手中。

3.實例化工廠

實例化工廠的方式相同于靜態(tài)工廠方法,只是在一個實例工廠中反射一個存在對象的非靜態(tài)方法,從而去spring容器去創(chuàng)建實例化的bean。
創(chuàng)建實例化工廠

public class DefaultServiceLocator {
 
    private static ClientService clientService = new ClientServiceImpl();
 
    private static AccountService accountService = new AccountServiceImpl();
 
    public ClientService createClientServiceInstance() {
        return clientService;
    }
 
    public AccountService createAccountServiceInstance() {
        return accountService;
    }
}

 
配置xml:



 
    factory-bean="serviceLocator"
    factory-method="createClientServiceInstance"/>
 
    factory-bean="serviceLocator"
    factory-method="createAccountServiceInstance"/>
 

 

關(guān)于“Spring中IOC容器的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


分享標(biāo)題:Spring中IOC容器的示例分析
轉(zhuǎn)載源于:http://weahome.cn/article/josgcc.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部