spring框架有什么用?
spring框架有什么用?
spring框架的作用就是讓對象與對象(模塊與模塊)之間的關(guān)系沒有通過代碼來關(guān)聯(lián),都是通過配置類說明 管理的(Spring根據(jù)這些配置 內(nèi)部通過反射去動態(tài)的組裝對象) Spring是一個容器,凡是在容器里的對象才會有Spring所提供的這些服務(wù)和功能。
內(nèi)部最核心的就是IOC了, 動態(tài)注入,讓一個對象的創(chuàng)建不用new了,可以自動的生產(chǎn),這其實就是利用java里的反射 反射其實就是在運行時動態(tài)的去創(chuàng)建、調(diào)用對象,Spring就是在運行時,跟xml Spring的配置 文件來動態(tài)的創(chuàng)建對象,和調(diào)用對象里的方法的 。
Spring還有一個核心就是AOP這個就是面向切面編程,可以為某一類對象 進(jìn)行監(jiān)督和控制(也就是 在調(diào)用這類對象的具體方法的前后去調(diào)用你指定的 模塊)從而達(dá)到對一個模塊擴(kuò)充的功能。
Spring框架是由于軟件開發(fā)的復(fù)雜性而創(chuàng)建的。Spring使用的是基本的JavaBean來完成以前只可能由EJB完成的事情。然而,Spring的用途不僅僅限于服務(wù)器端的開發(fā)。從簡單性百科、可測試性和松耦合性的角度而言,絕大部分Java應(yīng)用都可以從Spring中受益。
目的:解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性
功能:使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能
范圍:任何Java應(yīng)用Spring是一個輕量級控制反轉(zhuǎn)(IoC)和面向切面(AOP)的容器框架。
編程中為什么用spring?
1、Spring能有效地組織你的中間層對象;
2、Spring能消除在許多工程中常見的對Singleton的過多使用;
3、 通過一種在不同應(yīng)用程序和項目間一致的方法來處理配置文件,消除各種自定義格式的屬性文件的需要,僅僅需要看看類的JavaBean屬性。Inversion of Control的使用幫助完成了這種簡化;(使用的是type2的IoC)
4、 能夠很容易培養(yǎng)你面向接口而不是面向類的編程習(xí)慣。
5、 Spring的設(shè)計會讓使用它創(chuàng)建的應(yīng)用盡可能少的依賴于它的APIs,在Spring應(yīng)用中的大多數(shù)業(yè)務(wù)對象沒有依賴于Spring。
6、 使用Spring構(gòu)建的應(yīng)用程序易于單元測試;
7、 Spring使EJB成為一個實現(xiàn)選擇,而不是必需的選擇。你可以用POJOs或local EJBs來實現(xiàn)業(yè)務(wù)接口,卻不會影響到調(diào)用代碼。
8、 Spring提供一些web應(yīng)用上的EJB的替代方案,比如用AOP提供聲明性事務(wù)管理;
9、 Spring為數(shù)據(jù)存取提供了一個一致的框架,不論是使用JDBC還是O/R mapping的產(chǎn)品(Hibernate,JDO)。
10、 也是個人體會最深的一點,它可以替代部分配置文件,甚至有效減少源代碼的編寫量。
1)方便解耦,簡化開發(fā)(高內(nèi)聚、低耦合);Spring就是一個大工廠,可以將所有對象創(chuàng)建和依賴關(guān)系維護(hù),交給Spring管理。
2)AOP編程的支持;Spring提供面向切面編程,可以方便的實現(xiàn)對程序進(jìn)行權(quán)限攔截、運行監(jiān)控等功能,聲明式事務(wù)的支持,只需要通過配置就可以完成對事務(wù)的管理,而無需手動編程。
3)方便集成各種**框架;Spring不排斥各種**的開源框架,其內(nèi)部提供了對各種**框架(如:Struts、Hibernate、MyBatis等)的直接支持。
4)降低JavaEE API的使用難度;Spring 對JavaEE開發(fā)中非常難用的一些API(JDBC、JavaMail、遠(yuǎn)程調(diào)用等),都提供了封裝,使這些API應(yīng)用難度大大降低。
spring框架的好處,為什么使用它
spring 好處就是解耦,無論是DI還是aop。目的都是把原來一大串的代碼分解為不同的文件里面,比如:你要做一個購物流程,那入?yún)⒖赡苁前唐穒d,購買商品數(shù)量和用戶id,然后巴拉巴拉的處理邏輯,驗證用戶,驗證商品,驗證庫存。
然后生成訂單,付款。同時,你還要關(guān)注比如記錄日志,事務(wù)回滾,安全,構(gòu)建訪問數(shù)據(jù)庫的dao。這些跟業(yè)務(wù)就沒啥關(guān)系了用了spring后,你可以將dao做到其他類,然后注入進(jìn)去;安全,日志,事務(wù)你可以做到aop。
spring主要的作用?
Spring框架是為了解決企業(yè)應(yīng)用開發(fā)的復(fù)雜性而創(chuàng)建的。
Spring的用途不僅僅限于服務(wù)器端的開發(fā)。
從簡單性、可測試性和松耦合性角度而言,絕大部分Java應(yīng)用都可以從Spring中受益。
使用基本的JavaBean代替EJB,并提供了更多的企業(yè)應(yīng)用功能。
擴(kuò)展資料
優(yōu)點
1、JAVA EE應(yīng)該更加容易使用。
2、面向?qū)ο蟮脑O(shè)計比任何實現(xiàn)技術(shù)(比如JAVA EE)都重要。
3、面向接口編程,而不是針對類編程。
Spring將使用接口的復(fù)雜度降低到零。(面向接口編程有哪些復(fù)雜度)
4、代碼應(yīng)該易于測試。Spring框架會幫助你,使代碼的測試更加簡單。
5、JavaBean提供了應(yīng)用程序配置的**方法。
6、在Java中,已檢查異常(Checked exception)被過度使用。框架不應(yīng)該迫使你捕獲不能恢復(fù)的異常。