<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 創業指南 > 職場 > 面試題 > STRUTS常見面試題

        STRUTS常見面試題

        時間: 護托1061 分享

        STRUTS常見面試題

          Struts框架的數據驗證可分為幾種類型?下面就由學習啦小編為大家介紹一下STRUTS常見面試題的文章,歡迎閱讀。

          STRUTS常見面試題篇1

          1. 簡述Struts框架的初始化流程。

          答案:對于采用Struts框架的Web應用,在Web應用啟動時就會加載并初始化控制器ActionServlet

          ActionServlet從struts-config.xml文件中讀取配置信息,把它們存放到ActionMappings對象中。

          在Struts framework中, Controller主要是ActionServlet,但是對于業務邏輯的操作則主要由Action、ActionMapping、ActionForward這幾個組件協調完成(也許這幾個組件,應該劃分到模型中的業務邏輯一塊)。

          其中,Action扮演了真正的控制邏輯的實現者,而ActionMapping和ActionForward則指定了不同業務邏輯或流程的運行方向。

          2. 簡述Struts框架響應客戶請求的工作流程

          1. 檢索和用戶請求匹配的ActionMapping實例,如果不存在,就返回用戶請求路徑無效的信息。

          2. 如果ActionForm實例不存在,就創建一個ActionForm對象,把客戶提交的表單數據保存到ActionForm對象中。

          3. 根據配置信息決定是否需要表單驗證。如果需要驗證,就調用ActionForm的validate()方法。

          4. 如果ActionForm的validate()方法返回null或返回一個不包含ActionMessge的ActionErrors對象,就表示表單驗證成功。

          5. ActionServlet根據AtionMapping實例包含的映射信息決定將請求轉發給哪個Action。如果應的Action實例不存在,就先創建這個實例,然后調用Action的execute()方法。

          6. Action的execute()方法返回一個ActionForward對象,ActionServlet再把客戶請求轉發給ActionForward對象指向的JSP組件。

          7. ActionForward對象指向的JSP組件生成動態頁面,返回給客戶。

          對于以上流程的步驟(4),如果ActionForm的validate()方法返回一個包含一個或多個ActionError的ActionErrors對象,就表示表單驗證失敗,此時ActionServlet將直接把請求轉發給包含客戶提交表單的JSP組件。在這種情況下,不會再創建Action對象并調用Action的execute方法。

          3 Struts框架的數據驗證可分為幾種類型?

          表單驗證(由ActionForm Bean處理):如果用戶沒有在表單中輸入姓名,就提交表單,將生成表單驗證錯誤

          業務邏輯驗證(由Action處理):如果用戶在表單中輸入的姓名為“Monster”,按照本應用的業務規則,不允許向“Monster”打招呼,因此將生成業務邏輯錯誤。

          4 簡述Form Bean的表單驗證流程。

          1、當用戶提交了HTML表單,Struts框架自動把表單數據組裝到ActionForm Bean中。

          2、接下來Struts框架會調用ActionForm Bean的validate()方法進行表單驗證。

          3、如果validate()方法返回的ActionErrors 對象為null,或者不包含任何ActionMessage對象,就表示沒有錯誤,數據驗證通過。

          4、如果ActionErrors中包含ActionMessage對象,就表示發生了驗證錯誤,Struts框架會把ActionErrors對象保存到request范圍內,然后把請求轉發到恰當的視圖組件,視圖組件通過標簽把request范圍內的ActionErrors對象中包含的錯誤消息顯示出來,提示用戶修改錯誤。

          5在struts配置文件中action元素包含哪些屬性和子元素?

          path屬性:指定請求訪問Action的路徑

          type屬性:指定Action的完整類名

          name屬性:指定需要傳遞給Action的ActionForm Bean

          scope屬性:指定ActionForm Bean的存放范圍

          validate屬性:指定是否執行表單驗證

          input屬性:指定當表單驗證失敗時的轉發路徑。

          元素還包含一個子元素,它定義了一個請求轉發路徑。

          6. 簡單敘述ActionForm Bean的作用

          1、ActionForm Bean也是一種JavaBean,除了具有一些JavaBean的常規方法,還包含一些特殊的方法,用于驗證HTML表單數據以及將其屬性重新設置為默認值。

          2、Struts框架利用ActionForm Bean來進行View組件和Controller組件之間表單數據的傳遞。

          3、Struts框架把View組件接受到的用戶輸入的表單數據保存在ActionForm Bean中,把它傳遞給Controller組件,Controller組件可以對ActionForm Bean中的數據進行修改JSP文件使用Struts標簽讀取修改后的ActionForm Bean的信息,重新設置HTML表單。

          7 .敘述ActionForm執行步驟

          (1)檢查Action的映射,確定Action中已經配置了對ActionForm的映射

          (2)根據name屬性,查找form bean的配置信息

          (3)檢查Action的formbean的使用范圍,確定在此范圍下,是否已經有此form bean的實例。

          (4)假如當前范圍下,已經存在了此form bean的實例,而是對當前請求來說,是同一種類型的話,那么就重用。

          (5)否則,就重新構建一個form bean的實例

          (6)form bean的reset()方法備調用

          (7)調用對應的setter方法,對狀態屬性賦值

          (8)如果validatede的屬性被設置為true,那么就調用form bean的validate()方法。

          (9)如果validate()方法沒有返回任何錯誤,控制器將ActionForm作為參數,傳給Action實例的execute()方法并執行。

          8、FormBean的作用

          答:FormBean是一種JAVABean,除了具有JAVABean的常規方法,還包含一些特殊方法,用于驗證表單數據,以及將其屬性重新設置為默認值。 FormBean用來進行View組件和Controller組件之間表單數據的傳遞。View組件接收到用戶輸入的表單數據,保存在FormBean中,把它傳遞給Controller組件,Controller組件可以對FormBean中的數據進行修改。

          9、Forward與Global-Forward的區別

          答:Forward是根據Action return的值找到對應的JSP頁。當多個Action共同return同一個值時,可將這個Forward元素寫在Global-Forward中。

          STRUTS常見面試題篇2

          1.問題:在Struts應用的視圖中包含哪些組件?

          (A) JSP

          (B) Servlet

          (C) ActionServlet

          (D) Action

          (E) 代表業務邏輯或業務數據的JavaBean

          (F) EJB

          (G) 客戶化標簽

          2問題:在Struts應用的控制器中包含哪些組件?

          (A) JSP

          (B) Servlet

          (C) ActionServlet

          (D) Action

          (E)代表業務邏輯或業務數據的JavaBean

          (F) EJB

          (G) 客戶化標簽

          3.在struts配置文件中action元素包含哪些屬性和子元素?

          path屬性:指定請求訪問Action的路徑

          type屬性:指定Action的完整類名

          name屬性:指定需要傳遞給Action的ActionForm Bean

          scope屬性:指定ActionForm Bean的存放范圍

          validate屬性:指定是否執行表單驗證

          input屬性:指定當表單驗證失敗時的轉發路徑。

          元素還包含一個子元素,它定義了一個請求轉發路徑。

          4. 問題:在Struts應用的模型中包含哪些組件?

          (A) JSP

          (B) Servlet

          (C) ActionServlet

          (D) Action

          (E) 代表業務邏輯或業務數據的JavaBean

          (F) EJB

          (G) 客戶化標簽

          5. 問題: struts框架中,關于FormBean,下列說法正確的是:

          A FormBean是一種數據bean,主要用來封裝表單提交上來的數據,并把這些數據傳遞給Action

          B 在FormBean中可以對頁面上傳遞來的參數進行一下格式上的驗證,這種驗證是一種客戶端的驗證

          C 用戶每次提交表單,都會產生一個新的FormBean實例

          D 動態FormBean不能進行驗證操作

          6. 問題:struts框架中,在一個Action的配置信息中,name屬性指的是:

          A 當前action實例的名字

          B 當前action所在的類的名字

          C 該Action中調用的FormBean的實例的名字

          D 該Action中調用的FormBean的類的所在包名

          7. 問題:關于struts項目中的類與MVC模式的對應關系,說法錯誤的是?

          A Jsp文件實現視圖View的功能

          B ActionServlet這一個類是整個struts項目的控制器

          C ActionForm、Action都屬于Model部分

          D 一個struts項目只能有一個Servlet

          8、問題:以下哪些說法是正確的?

          選項:(A)每個HTTP請求對應一個單獨的ActionServlet實例

          (B)對于每個請求訪問HelloAction的HTTP請求,Struts框架會創建一個單獨的HelloAction實例。

          (C)每個子應用對應一個單獨的RequestProcessor實例

          (D)每個子應用對應一個單獨的web.xml文件

          9 ActionForm Bean對象是由誰創建的?

          (A) 標簽處理類

          (B) ActionServlet

          (C) RequestProcessor

          (D) Action

          10、struts框架,錯誤的是?

          A Struts中無法完成上傳功能

          B Struts框架基于MVC模式

          C Struts框架容易引起流程復雜、結構不清晰等問題

          D Struts可以有效地降低項目的類文件數目

          STRUTS常見面試題篇3

          1、問題:把靜態文本放在Resource Bundle中,而不是直接在JSP文件中包含這些靜態文本,有什么優點?

          提高可維護性 提高可重用性 支持國際化

          2. 問題:關于struts項目中的類與MVC模式的對應關系,說法錯誤的是?

          A Jsp文件實現視圖View的功能

          B ActionServlet這一個類是整個struts項目的控制器

          C ActionForm、Action都屬于Model部分

          D 一個struts項目只能有一個Servlet

          3. Struts工作機制?為什么要使用Struts?

          工作機制:

          Struts的工作流程:

          在web應用啟動時就會加載初始化ActionServlet,ActionServlet從

          struts-config.xml文件中讀取配置信息,把它們存放到各種配置對象

          當ActionServlet接收到一個客戶請求時,將執行如下流程.

          -(1)檢索和用戶請求匹配的ActionMapping實例,如果不存在,就返回請求路徑無效信息;

          -(2)如果ActionForm實例不存在,就創建一個ActionForm對象,把客戶提交的表單數據保存到ActionForm對象中;

          -(3)根據配置信息決定是否需要表單驗證.如果需要驗證,就調用ActionForm的validate()方法;

          -(4)如果ActionForm的validate()方法返回null或返回一個不包含ActionMessage的ActuibErrors對象, 就表示表單驗證成功;

          -(5)ActionServlet根據ActionMapping所包含的映射信息決定將請求轉發給哪個Action,如果相應的 Action實例不存在,就先創建這個實例,然后調用Action的execute()方法;

          -(6)Action的execute()方法返回一個ActionForward對象,ActionServlet在把客戶請求轉發給 ActionForward對象指向的JSP組件;

          -(7)ActionForward對象指向JSP組件生成動態網頁,返回給客戶;

          為什么要用:

          JSP、Servlet、JavaBean技術的出現給我們構建強大的企業應用系統提供了可能。但用這些技術構建的系統非常的繁亂,所以在此之上,我們需要一個規則、一個把這些技術組織起來的規則,這就是框架,Struts便應運而生。

          基于Struts開發的應用由3類組件構成:控制器組件、模型組件、視圖組件

          4. Struts的validate框架是如何驗證的?

          在struts配置文件中配置具體的錯誤提示,再在FormBean中的validate()方法具體調用。

          5. 說下Struts的設計模式

          MVC模式: web應用程序啟動時就會加載并初始化ActionServler。用戶提交表單時,一個配置好的ActionForm對象被創建,并被填入表單相應的數據,ActionServler根據Struts-config.xml文件配置好的設置決定是否需要表單驗證,如果需要就調用ActionForm的Validate()驗證后選擇將請求發送到哪個Action,如果Action不存在,ActionServlet會先創建這個對象,然后調用 Action的execute()方法。Execute()從ActionForm對象中獲取數據,完成業務邏輯,返回一個ActionForward對象,ActionServlet再把客戶請求轉發給ActionForward對象指定的jsp組件,ActionForward對象指定的jsp生成動態的網頁,返回給客戶。

          6、STRUTS的應用(如STRUTS架構)

          Struts 是采用Java Servlet/JavaServer Pages技術,開發Web應用程序的開放源碼的framework。采用Struts能開發出基于MVC(Model-View-Controller)設計模式的應用構架。Struts有如下的主要功能:一.包含一個controller servlet,能將用戶的請求發送到相應的Action對象。二.JSP自由tag庫,并且在controller servlet中提供關聯支持,幫助開發員創建交互式表單應用。三.提供了一系列實用對象:XML處理、通過Java reflection APIs自動處理JavaBeans屬性、國際化的提示和消息。

        3204682 主站蜘蛛池模板: 自拍偷自拍亚洲精品播放| 强开少妇嫩苞又嫩又紧九色 | 中文字幕av一区二区| 樱花草视频www日本韩国| 99久久婷婷国产综合精品青草漫画| 色吊丝中文字幕在线观看| 人妻中文字幕一区二区视频| 久久无码中文字幕免费影院蜜桃| 国产影片AV级毛片特别刺激| 亚洲婷婷五月综合狠狠爱| 米奇777超碰欧美日韩亚洲| 国产精品一区二区三区自拍| 无码人妻精品一区二区三区下载| 激情 自拍 另类 亚洲| 四虎网址| xxxx丰满少妇高潮| 无码内射中文字幕岛国片| 国产一区二区不卡自拍| 国产一级黄色片在线播放| 国产成人精品亚洲日本在线观看 | 久久久久国产精品人妻电影| 国产亚洲日韩在线播放更多| 亚洲国产欧美在线观看片| 69天堂人成无码免费视频| 日日躁狠狠躁狠狠爱| 亚洲午夜福利精品无码不卡| 久久精品国产亚洲av电影| 厨房喂奶乳hh| 99re6这里有精品热视频| 欧美精品一区二区三区在线观看| 国产偷国产偷亚洲高清人| 欧美人妻在线一区二区| 日本欧美v大码在线| 国内精品无码一区二区三区| 九九热精彩视频在线免费| 7777精品久久久大香线蕉| 伊人激情av一区二区三区| 色视频在线观看免费视频| 久久久久国产一级毛片高清版A| 日韩av片无码一区二区不卡| 欧美黑人激情性久久|