struts2詳解之原理模式
服務架構圖:
Struts2(具體實現)
^
|
java servlet規範
^
|
底層Http(基於底層)
<!-- more -->
java servlet api解決了底層/服務器問題,但沒有提供應用程序級別的問題,比如說
1、請求參數到java數據類型的綁定(從請求中拿出的都是字符串類型,但需要轉化成java的數據類型,很費時、麻煩)
2、訪問層的業務邏輯(形成一個一致的工作流,面向動作的框架Action)
3、訪問數據層
4、表示層(視圖複雜的javascript,國際化的呈現視圖、有太多的可複用代碼)
5、國際化和本地化的支持
MVC模式有三個關注點:模型、視圖、控制器
在Structs2當中通過action、result、FilterDispatcher來實現。
工作流: web客戶端 ^
| \
請求 | \
| \
v \ 返回視圖
控制器
| \
調用動作 | \
v \
模型-------------> 視圖
選擇結果
控制器:FilterDispatcher就是一個servlet過濾器,攔截所有的請求,根據配置文件裏的URL映射決定哪個動作處理這個請求,可以通過xml或者註解的方式來完成。
動作:Action主要有兩個作用,一是封裝了業務邏輯的調用(組合的方式),二是用於數據傳輸。
視圖(結果):Result視圖就是用戶看見的,通常是jsp頁面、模版技術呈現的視圖等。
structs2工作原理:
框架不僅包含了MVC組件,可以說在其他參與請求處理的組件(攔截器、OGNL、ValuStack值棧)的幫助下,提供了更爲整潔的MVC實現。
Struts2(具體實現)
^
|
java servlet規範
^
|
底層Http(基於底層)
<!-- more -->
java servlet api解決了底層/服務器問題,但沒有提供應用程序級別的問題,比如說
1、請求參數到java數據類型的綁定(從請求中拿出的都是字符串類型,但需要轉化成java的數據類型,很費時、麻煩)
2、訪問層的業務邏輯(形成一個一致的工作流,面向動作的框架Action)
3、訪問數據層
4、表示層(視圖複雜的javascript,國際化的呈現視圖、有太多的可複用代碼)
5、國際化和本地化的支持
MVC模式有三個關注點:模型、視圖、控制器
在Structs2當中通過action、result、FilterDispatcher來實現。
工作流: web客戶端 ^
| \
請求 | \
| \
v \ 返回視圖
控制器
| \
調用動作 | \
v \
模型-------------> 視圖
選擇結果
控制器:FilterDispatcher就是一個servlet過濾器,攔截所有的請求,根據配置文件裏的URL映射決定哪個動作處理這個請求,可以通過xml或者註解的方式來完成。
動作:Action主要有兩個作用,一是封裝了業務邏輯的調用(組合的方式),二是用於數據傳輸。
視圖(結果):Result視圖就是用戶看見的,通常是jsp頁面、模版技術呈現的視圖等。
structs2工作原理:
框架不僅包含了MVC組件,可以說在其他參與請求處理的組件(攔截器、OGNL、ValuStack值棧)的幫助下,提供了更爲整潔的MVC實現。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.