2 回答

TA貢獻1735條經驗 獲得超5個贊
Spring MVC是spring的一個web組件,它為構建穩健的web應用提供了豐富的功能。
1、首先用戶發送請求>DispatcherS :rvlet,前端控制器收到請求后自己不進行處理,而是委托給其他的解析器進行處理,作為統一訪問點,進行全局的流程控制;
2、D ispatcherServletHandeM ping HandlerMapping 將會把請求映射為HandlerExecutio
nChain 對象(包含一個Handler 處理器(頁面控制器)對象、多個HandlerInterceptor 攔截器象,通過這種策略模式,很容易添加新的映射策略;
3、DispatcherServetHanderdapte HandlerAdapter 將會把處理器包裝為適配器,從而支持
多種類型的處理器,即適配器設計模式的應用,從而很容易支持很多類型的處器;
4、HandlerAdapter處理器功能處理方法的調用HandlerAdapter將會根據適配的結果調用真正的處理器的功能處理方法完成功能處理并返回一個ModelAndView 對象( 包含模型數據、邏輯視圖名) ;
5、Mode AndVlew 的邏輯視圖名VewResover ViewResolver 將把邏輯視圖名解析為具體的Vie
w 通過這種策略模式很容易更換其他視圖技術;
6、V lew >渲染View 會根據傳進來的Model 模型數據進行渲染此處的Model 實際是一個Map
數據結構因此很容易支持其他視圖技術遠回控制獎會D spatchersery et 三Dispatcherservet 近回鳴應給用戶到此一個流程結束。

TA貢獻1785條經驗 獲得超8個贊
一、 IoC(Inversion of control): 控制反轉
1、IoC:
概念:控制權由對象本身轉向容器;由容器根據配置文件去創建實例并創建各個實例之間的依賴關系
核心:bean工廠;在Spring中,bean工廠創建的各個實例稱作bean
二、AOP(Aspect-Oriented Programming): 面向方面編程
1、 代理的兩種方式:
靜態代理:
? 針對每個具體類分別編寫代理類;
? 針對一個接口編寫一個代理類;
動態代理:
針對一個方面編寫一個InvocationHandler,然后借用JDK反射包中的Proxy類為各種接口動態生成相應的代理類
2、 AOP的主要原理:動態代理
Spring工作原理
Spring 已經用過一段時間了,感覺Spring是個很不錯的框架。內部最核心的就是IOC了,
動態注入,讓一個對象的創建不用new了,可以自動的生產,這其實就是利用java里的反射
反射其實就是在運行時動態的去創建、調用對象,Spring就是在運行時,跟xml Spring的配置
文件來動態的創建對象,和調用對象里的方法的 。
Spring還有一個核心就是AOP這個就是面向切面編程,可以為某一類對象 進行監督和控制(也就是
在調用這類對象的具體方法的前后去調用你指定的 模塊)從而達到對一個模塊擴充的功能。這些都是通過
配置類達到的。
Spring目的:就是讓對象與對象(模塊與模塊)之間的關系沒有通過代碼來關聯,都是通過配置類說明
管理的(Spring根據這些配置 內部通過反射去動態的組裝對象)
要記?。篠pring是一個容器,凡是在容器里的對象才會有Spring所提供的這些服務和功能。
Spring里用的最經典的一個設計模式就是:模板方法模式。(這里我都不介紹了,是一個很常用的設計模式)
Spring里的配置是很多的,很難都記住,但是Spring里的精華也無非就是以上的兩點,把以上兩點跟理解了
也就基本上掌握了Spring.
添加回答
舉報