日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

轻松理解Spring框架的基本思想

發(fā)布時間:2025/3/15 javascript 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 轻松理解Spring框架的基本思想 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

說起Spring框架,就不得不說J2EE的EJB。年齡稍大一些的Java程序員對J2EE的EJB還是記憶猶新的,當時使用EJB開發(fā)大型應用系統(tǒng)非常時髦,Java程序員無不以掌握EJB開發(fā)技術(shù)為自豪,程序員引以為豪的原因是EJB的技術(shù)太復雜了,以至于一般的Java程序員很難掌握這么復雜的技術(shù)。

EJB的學習成本很高,開發(fā)效率卻不高,需要編寫很多重復的代碼,這些問題阻止了EJB的繼續(xù)發(fā)展。就在EJB技術(shù)止步不前的時候,Spring框架在合適的時機出現(xiàn)了,Spring框架和EJB不同,Spring框架的學習成本非常低,它是一個輕量級的開發(fā)框架,更多強調(diào)面向?qū)ο蟮脑O(shè)計,而不是讓現(xiàn)有的技術(shù)變得更復雜,它使用JavaBean替代了復雜的EJB,并且為JavaBean提供了簡單易用的應用配置框架。

一個JavaBean就是一個公共類,它可以被其它JavaBean類作為組件來使用,并且JavaBea之間的組配不需要在代碼級實現(xiàn),完全可以在配置層和注解層實現(xiàn),Spring會自動選擇相適配的JavaBean來組配運行。這種自動適配機制避免了JavaBean與使用類之間的代碼耦合,提高了程序的可擴展性和維護性。

例如類A要使用類B,類B是類A的屬性,如果直接在類A中創(chuàng)建類B,當類B因業(yè)務(wù)需要修改時,也需要修改類A的代碼,這種寫法就是代碼耦合,也可以說類A和類B屬于代碼耦合。

假如我們把類B的創(chuàng)建交給Spring,Spring通過配置文件或者通過Java注解來創(chuàng)建類B,然后再由Spring把創(chuàng)建的類B實例和類A的實例組配起來,這樣就避免了類A與類B的代碼耦合。這種機制就是Spring框架的控制反轉(zhuǎn)思想,相當于類A把創(chuàng)建類B權(quán)利交給了Spring,由Spring來控制類B的創(chuàng)建。

Spring框架還有一個比較重要的功能,那就是AOP機制。Spring框架的AOP機制可以把系統(tǒng)中的一些通用功能抽取出來,作為JavaBean來使用,與此同時在系統(tǒng)的業(yè)務(wù)流程代碼中設(shè)置調(diào)用這些JavaBean功能的切入點,當系統(tǒng)業(yè)務(wù)流程執(zhí)行到切入點時,Spring會自動把需要調(diào)用的JavaBean橫向切入到業(yè)務(wù)流程指定的位置,AOP的這種技術(shù)也稱為“橫切”技術(shù)。

例如,在一個業(yè)務(wù)系統(tǒng)中,當用戶要進入需要操作權(quán)限的頁面時,系統(tǒng)會先進入登錄頁,要求用戶登錄系統(tǒng)后再進入該頁面。這樣的操作權(quán)限頁面會有多個,如果為每個頁面都寫登錄業(yè)務(wù)邏輯處理代碼,顯然是會造成代碼冗余,維護起來也非常麻煩。比較好的做法是把用戶登錄業(yè)務(wù)處理作為一個獨立的JavaBean,這個JavaBean也稱為AOP的“切面”。然后在需要用戶操作權(quán)限的業(yè)務(wù)流程頁面設(shè)置“切入點”,并通過注解或配置文件將“切面”和“切入點”連接起來。當業(yè)務(wù)流程執(zhí)行到“切入點”時,Spring框架會自動把與切入點關(guān)聯(lián)的“切面”切入到業(yè)務(wù)流程“切入點”所在的位置,開始執(zhí)行“切面”代碼,直至切面代碼執(zhí)行完畢,然后根據(jù)“切面”返回的結(jié)果確定是否執(zhí)行后面的流程。下圖是用戶登錄功能切入到業(yè)務(wù)流程的示意圖。

?

圖1 用戶登錄功能切入到業(yè)務(wù)流程示意圖

Spring框架還有一個最大的特征就是和現(xiàn)有的開發(fā)框架不是競爭關(guān)系,而是采用融合的方式將其它框架集成進來,充分利用其它框架的技術(shù),為系統(tǒng)實現(xiàn)提供最優(yōu)解決方案。SSM就是Spring框架融合了MVC框架技術(shù)和MyBatis數(shù)據(jù)庫框架技術(shù)。

總結(jié)

以上是生活随笔為你收集整理的轻松理解Spring框架的基本思想的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。