Spring.Net框架簡介
一、Spring.Net簡介
Spring.NET為建立企業(yè)級應(yīng)用提供了一套輕量級的解決方案。
通過Spring.NET,我們可以用統(tǒng)一且透明的方式來配置應(yīng)用程序。Spring.NET的重點(diǎn)是為中間層提供聲明式事務(wù)管理,以及一個(gè)功能齊全的ASP.NET擴(kuò)展框架。Spring.NET是非侵入式的,代碼對框架本身不會產(chǎn)生任何依賴。
Spring.Core庫是框架的基礎(chǔ),提供依賴注入功能。Spring.NET中大多數(shù)類庫依賴或擴(kuò)展了Spring.Core的功能。IObjectFactory接口提供了一個(gè)簡單而優(yōu)雅的工廠模式,移除了對單例和一些服務(wù)定位stub的必要。允許你將真正的程序邏輯與配置解耦。作為對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庫。后續(xù)的發(fā)布將包含對Spring.NET、Remoting和數(shù)據(jù)訪問的支持。
二、依賴注入
依賴注入即控制反轉(zhuǎn)
控制反轉(zhuǎn)(Inversion of Control,英文縮寫為IOC)是一個(gè)重要的面向?qū)ο缶幊痰姆▌t來削減計(jì)算機(jī)程序的耦合問題,也是輕量級的Spring框架的核心??刂品崔D(zhuǎn)一般分為兩種類型:依賴注入(Dependency Injection,簡稱DI)和依賴查找。依賴注入應(yīng)用比較廣泛。
其本質(zhì)就是反射工廠。
在運(yùn)行期間,由外部容器動態(tài)地將依賴對象注入到容器中。
Interface Driven Design接口驅(qū)動,接口驅(qū)動有很多好處,可以提供不同靈活的子類實(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í)例化對象
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:提供了對Web的支持。
Spring.Web.Mvc3.dll:Spring.NET自己的Web框架。
Common.Logging.dll:Spring.Net日志功能。
到此這篇關(guān)于Spring.Net框架的文章就介紹到這了。希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
使用FlashPaper在線轉(zhuǎn)換.doc為.swf
Flashpaper的使用相信大多數(shù)人都知道,這里的Demo是用于在線轉(zhuǎn)換 .doc文件轉(zhuǎn)換為 .swf的flash文件。2011-02-02
.net core webapi jwt 更為清爽的認(rèn)證詳解
這篇文章主要介紹了.net core webapi jwt 更為清爽的認(rèn)證詳解,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-05-05

