- 相關推薦
尚硅谷JavaEE 面試
除了 SSH 以外還要會什么 ?
提要
Struts2 面試問題 Hibernate 面試問題 Spring & SpringMVC 面試問題 SpringSecurity & Shiro 面試問題 JPA & SpringData 面試問題 項目面試問題
簡述 Struts2 的工作流程
、. 請求發送給 StrutsPrepareAndExecuteFilter ②. StrutsPrepareAndExecuteFilter 判定該請求是否是一個 Struts2 請求 ③. 若該請求是一個 Struts2 請求,則 StrutsPrepareAndExecuteFilter 把 請求的處理交給 ActionProxy ④. ActionProxy 創建一個 ActionInvocation 的實例,并進行初始化 ⑤. ActionInvocation 實例在調用 Action 的過程前后,涉及到相關攔截器 (Intercepter)的調用。 ⑥. Action 執行完畢,ActionInvocation 負責根據 struts.xml 中的配置找 到對應的返回結果。調用結果的 execute 方法,渲染結果。 ⑦. 執行各個攔截器 invocation.invoke() 之后的代碼 ⑧. 把結果發送到客戶端
HttpServletRequest
StrutsPrepareAndExecuteFilter Interceptor 1 ActionProxy Interceptor 2 Interceptor 3 TagSubsystem Configuration Manager Action Action Invocation Result Template JSP、FreeMarker…
ActionMapper
struts.xml
Interceptor 3
Interceptor 2
Interceptor 1
HttpServletResponse
Struts2 攔截器 和 過濾器 的區別:
、、過濾器依賴于Servlet容器,而攔截器不依賴 于Servlet容器。 ②、Struts2 攔截器只能對 Action 請求起作用, 而過濾器則可以對幾乎所有請求起作用。 ③、攔截器可以訪問 Action 上下文 (ActionContext)、值棧里的對象(ValueStack),而 過濾器不能. ④、在 Action 的生命周期中,攔截器可以多次調 用,而過濾器只能在容器初始化時被調用一次。
、. 基于 MVC 架構,框架結構清晰。 ②. 使用 OGNL: OGNL 可以快捷的訪問值棧中的 數據、調用值棧中對象的方法 ③. 攔截器: Struts2 的攔截器是一個 Action 級別的 AOP, Struts2 中的許多特性都是通過攔截器來實 現的, 例如異常處理,文件上傳,驗證等。攔截器 是可配置與重用的 ④. 多種表現層技術. 如:JSP、FreeMarker、 Velocity 等
為什么要使用 Struts2 & Struts2 的優 點:
Struts2 如何訪問 HttpServletRequest、 HttpSession、ServletContext 三個域對 象
、. 與 Servlet API 解耦的訪問方式 > 通過 ActionContext 訪問域對象對應的 Map 對象 > 通過實現 Aware 接口使 Struts2 注入對應的 Map 對象 ②. 與 Servlet API 耦合的訪問方式 > 通過 ServletActionContext 直接獲取 Servlet API 對象 > 通過實現 ServletXxxAware 接口的方式使 Struts2 注 入對應的對象
Struts2 中的默認包 struts-default 有 什么作用?
、. struts-default 包是 struts2 內置的,它定義了 struts2 內部的眾多攔截器和 Result 類型,而 Struts2 很多核心的 功能都是通過這些內置的攔
【尚硅谷JavaEE 面試】相關文章:
美國研究生電話面試小技巧 -尚友學院街11-21
硅谷最佳職場光環褪色 裁員減薪消息頻傳11-24
柳傳志:中國“硅谷”急需管理人才11-17
面試技巧 求職面試之面試禮儀11-20
面試指南-面試的種類02-18
成功面試的面試技巧11-22
面試的特點面試技巧11-22
面試與offer 面試經歷11-19
面試技巧 電話面試11-19
面試技巧:面試不可貿然前往面試技巧11-22