欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring.Net框架簡(jiǎn)介

 更新時(shí)間:2022年03月03日 10:06:00   作者:.NET開發(fā)菜鳥  
這篇文章介紹了Spring.Net框架,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

一、Spring.Net簡(jiǎn)介

Spring.NET為建立企業(yè)級(jí)應(yīng)用提供了一套輕量級(jí)的解決方案。
通過Spring.NET,我們可以用統(tǒng)一且透明的方式來配置應(yīng)用程序。Spring.NET的重點(diǎn)是為中間層提供聲明式事務(wù)管理,以及一個(gè)功能齊全的ASP.NET擴(kuò)展框架。Spring.NET是非侵入式的,代碼對(duì)框架本身不會(huì)產(chǎn)生任何依賴。
Spring.Core庫(kù)是框架的基礎(chǔ),提供依賴注入功能。Spring.NET中大多數(shù)類庫(kù)依賴或擴(kuò)展了Spring.Core的功能。IObjectFactory接口提供了一個(gè)簡(jiǎn)單而優(yōu)雅的工廠模式,移除了對(duì)單例和一些服務(wù)定位stub的必要。允許你將真正的程序邏輯與配置解耦。作為對(duì)IObjectFactory的擴(kuò)展,IApplicationContext接口也在Spring.Core中,Spring DOTNET是一個(gè)關(guān)注于.NET企業(yè)應(yīng)用開發(fā)的應(yīng)用程序框架。它能夠提供很多方面的功能,例如控制反轉(zhuǎn)(Inversion of Control,英文縮寫為IOC)、依賴注入(Dependency Injection,英文縮寫為DI)、面向方面編程(AOP)、數(shù)據(jù)訪問抽象,以及ASP.NET集成等?;贘ava的spring框架的核心概念和價(jià)值已被應(yīng)用到.NET。Spring.NET 1.0包含一個(gè)完全功能的依賴注入容器和AOP庫(kù)。后續(xù)的發(fā)布將包含對(duì)Spring.NET、Remoting和數(shù)據(jù)訪問的支持。

二、依賴注入

依賴注入即控制反轉(zhuǎn)
控制反轉(zhuǎn)(Inversion of Control,英文縮寫為IOC)是一個(gè)重要的面向?qū)ο缶幊痰姆▌t來削減計(jì)算機(jī)程序的耦合問題,也是輕量級(jí)的Spring框架的核心??刂品崔D(zhuǎn)一般分為兩種類型:依賴注入(Dependency Injection,簡(jiǎn)稱DI)和依賴查找。依賴注入應(yīng)用比較廣泛。
其本質(zhì)就是反射工廠。
在運(yùn)行期間,由外部容器動(dòng)態(tài)地將依賴對(duì)象注入到容器中。

Interface Driven Design接口驅(qū)動(dòng),接口驅(qū)動(dòng)有很多好處,可以提供不同靈活的子類實(shí)現(xiàn),增加代碼穩(wěn)定和健壯性等等,但是接口一定是需要實(shí)現(xiàn)的,也就是如下語句遲早要執(zhí)行:AInterface a = new AInterfaceImp(); 這樣一來,耦合關(guān)系就產(chǎn)生了,如:

class A
{
        AInterface a;
        public A()
        { }
        //方法
        public void Method()
        {
           //實(shí)例化對(duì)象
            a = new AInterfaceImp();
        }
}

在上面的代碼中,Class A與AInterfaceImp就是依賴關(guān)系,如果想使用AInterface的另外一個(gè)實(shí)現(xiàn)類就需要更改代碼了。當(dāng)然,我們可以建立一個(gè)Factory來根據(jù)條件生成想要的AInterface的具體實(shí)現(xiàn),代碼如下:

public class InterfaceImpFactory
    {
        public AInterface Create(Object obj)
        {
            if (obj.Equals(condA))
            {
                return new AInterfaceImpA();
            }
            if (obj.Equals(condB))
            {
                return new AInterfaceImpB();
            }
            else
            {
                return new AInterfaceImp();
            }
        }
    }

上面的代碼中,表面上看來在一定程度上緩解了以上問題,但實(shí)質(zhì)上這種代碼耦合并沒有改變。通過IoC模式可以徹底解決這種耦合,它把耦合從代碼中移出去,放到統(tǒng)一的XML 文件中,通過一個(gè)容器在需要的時(shí)候把這個(gè)依賴關(guān)系形成,即把需要的接口實(shí)現(xiàn)注入到需要它的類中,這可能就是“依賴注入”說法的來源了。

三、DLL文件

Spring.Core.dll:包含Spring.NET框架基本的核心工具類,Spring.NET其他組件都要使用這里的類,是其他組件的基本核心。
Spring.NET其他組件都要使用到這里的類,是其他組件的基本核心。
Spring.Aop.dll:Spring.NET的AOP框架。
Spring.Web.dll:提供了對(duì)Web的支持。
Spring.Web.Mvc3.dll:Spring.NET自己的Web框架。
Common.Logging.dll:Spring.Net日志功能。

到此這篇關(guān)于Spring.Net框架的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論