我們所學習的技術框架有很多,例如struts1、struts2、jsf、spring、springmvc、hibernate、ibatis····在上篇部落格我說了我們可能在開發的路途上會要學習這些框架,我也給出了我對框架學習的幾點:
我們首先要看一下這個框架屬於開發結構中的那一層。因為我們的開發都是要用分層的思想來做的,所以我們第乙個就要看看我們開發分層中,各個層次之間有哪些框架。
我們從圖上看到了那些框架屬於哪一層的(這裡還有很多框架沒有涉及到)。之後我們來看一些常用的框架(這個常用相對於個人而言,我這裡所說的常用針對我自己來說,如果這裡我沒有介紹全的話,大家可以到相關的框架官網去查閱一下資料自主學習)。
下面我就簡單的介紹一些我經常使用的框架的結構和一些分析:
struts2框架(分為struts1和struts2):
一、struts框架結構圖:
優點:1. struts框架是乙個基於mvc的框架,所以它繼承了所有mvc的優點,例如:復用性好,團隊開發分工明確,結構層次分明等
2. 給程式開發者在servlet層上節約了大量的開發時間,應用程式開發者不再去觸及大量的servlet的編寫,僅僅變換為配置檔案。
二、struts1框架
1.框架的結構圖:
a) actionservlet是核心控制,url 位址對映、actionform的匹配、 action 的執行都需要這個類來進行導航
c) actionform:收集表單資料
d) action: 完成所需的業務邏輯,確定要跳轉的頁面
e) actionforward:用來封裝**路徑的
3. struts1框架的執行流程:
2)如果actionform例項不存在,就建立乙個actionform的物件,把客戶提交的表單資料封裝到actionform物件中。
3)根據配置資訊決定是否要進行表單驗證,如果需要,就呼叫actionform的validate()方法
4)如果validate()方法放回null,或者並不包含actionmessage的actionerror物件,就表示驗證成功
6)action的execute()方法返回乙個actionforword物件,actionservlet會把客戶請求**給actionforword物件所指向的jsp元件
7)actionforword物件指向jsp元件生成動態網頁返回給客戶
4.優點:和struts框架的優點相同
5.缺點:
1) 表現層技術單一:僅能用jsp
2) 與servletapi耦合性高,難於測試(httpservletrequest、httpservletresponse)
3) 嚴重依賴於servletapi(繼承action,繼承actionform),與struts1框架耦合性太高
這篇部落格就寫到這裡,如果再寫篇幅可能會過長,對讀者的閱讀造成負面影響,所以我會在下面的部落格中陸續介紹我經常使用的框架,當然我也會在這些同層之間的框架的分析中加入各個框架的區別,當然在適當的地方會畫一些來表示他們之間的知識關聯性,希望讀者能夠我一些建議和意見。
框架學習 struts1框架的結構和分析
我們所學習的技術框架有很多,例如struts1 struts2 jsf spring springmvc hibernate ibatis 在上篇部落格我說了我們可能在開發的路途上會要學習這些框架,我也給出了我對框架學習的幾點 我們首先要看一下這個框架屬於開發結構中的那一層。因為我們的開發都是要用分...
CI框架快速入門1 目錄結構分析
可以看到有以下檔案和目錄 system ci框架 user guide 使用者手冊,和實現無關,刪掉也不影響 index.php 唯一的入口檔案,除了這個檔案外其他php檔案都不能直接執行。index.php檔案 index.php是唯一的入口檔案,裡面主要邏輯是define一些常量,最後再requ...
zendFramework分析1 框架執行流程
1 通過url重寫請求都定位到入口檔案,預設是index.php 2 入口檔案載入系統的配置,單例生成前端控制器。老版本的框架需要在入口檔案中新增部分配置和外掛程式註冊,後來由專門負責程式引導的bootstrap類控制 3 前端控制器初始化請求和返回物件,獲取路由分發到具體控制器的動作 4 控制器根...