概述MVC體系結構?java
答:MVC包括三類對象,model是應用對象,view是視圖,controller是控制器,它定義用戶界面對用戶輸入的響應方式。 在MVC體系中,模型一般被稱爲」業務邏輯」,是真正完成任務的代碼,視圖就是使用界面,反映數據的變化。控制器控制着模型和視圖之間的交互過程,它決定着向用戶返回怎樣的視圖、檢查經過界面輸入的信息以及選擇處理輸入信息的模型。在MVC中,表示層和邏輯層分離,各部分可相互獨立進行開發,便於開發和維護,提升了開發效率。數據庫
概述struts,以及struts如何實現MVC架構的?編程
答:struts framework是一種基於JAVA編程的技術,Web應用程序開發人員經過struts framework便可充分利用面向對象設計、代碼重用以及」編寫一次、處處運行」的優勢。Struts提供了一種建立Web應用程序的框架,其中對應用程序的顯示、表示和數據的後端代碼進行了抽象。Struts採用jsp做爲MVC的視圖,由ActionServlet具體指定的action動做類做爲控制器即MVC中的C,負責視圖與模型之間的交互。控制器的每一個入口點都由名爲struts-config.xml的配置文件設置。該文件把來自視圖的請求映射爲特定的JAVA類以進行相應的處理,控制器還指定下一個視圖的位置。Struts中的模型主要指的就是javabean,它是模型的表明,主要封裝數據和業務邏輯。 Struts的處理流程: l、控制器進行初始化工做,讀取配置文件,爲不一樣的Struts模塊初始化相應的ModulConfig對象。 二、控制器接收Http請求,並從ActionConfig中找出對應於該請求的Action子類,若是沒有對應的Action,控制器直接將請求轉發給JSP或者靜態頁面,不然控制器將請求分發至具體的Action類進行處理。 三、在控制器調用具體的Action的Execute方法以前,ActionForm對象將利用Http請求中的參數來填充自已。還能夠在 ActionForm類中調用Validate方法來檢查請求參數的合法性,而且能夠返回一個包含全部錯誤信息的ActionErrors對象。 四、執行具體的的Execute的方法,它負責執行相應的業務邏輯。執行完後,返回一個ActionForward對象,控制器經過該 ActionForward對象來進行轉發工做。也能夠把Action要處理的業務邏輯封裝在JavaBean中,若是系統中還有EJB,那麼經過 JavaBean調用EJB以完成業務處理;若是沒有EJB,那麼就直接在JavaBean中鏈接數據庫,進行數據庫相關的操做。後端
(Struts1)架構