struts2知識點整理

渴睡人的眼發表於2018-07-14

struts2簡介

struts1和struts2的區別

struts2的mvc

struts2框架的整合:

1.web.xml配置struts2過濾器:前端控制器、核心控制器 如果有多個過濾器,需要將該過濾器放置到最後一個

2.struts.xml配置:主要是配置action,根據該配置,可以讓前端請求找到對應的action的位置。

 2.1package標籤:   

  • 可以繼承框架提供的package包,幫助我們擴充套件package的功能,提供訪問action的副父級路徑,package可以繼承多個包

 2.2action標籤:

  • 配置actioon物件。name,action的訪問路徑。class,action的型別。method,action要呼叫的方法

  2.3 result標籤:

  • 一般負責檢視的跳轉。name,檢視的邏輯名稱。type,跳轉的方式

  2.4  include標籤

  • 包含其他的配置檔案。file:要辦韓檔案的路徑

  2.5 constant標籤

  • 設定常量,覆蓋default.properties檔案中對應的常量。name,常量名。value,常量值。

  2.6  param標籤

  • 設定action的初始變數值,result中可以設定返回資料。

  1. excludenullPrpperties,是否序列化空的屬性
  2. includeProperties 需要序列化的屬性
  3. excludeProperties 不需要序列化的屬性
  4. namespace 配置跳轉頁面的名稱空間
  5. actionName配置跳轉action的名字

3.Action類:POJO,實現Action介面,繼承自ActionSupport,作用對前端的請求進行業務邏輯處理。

struts2框架的簡單的執行流程:

前端發起請求-->請求經過過濾器StrutsPrepareAndExecuteFilter-->過濾器會掃描struts.xml檔案-->根據xml檔案建立對應action的invocation物件-->通過invocation物件執行action中對應的方法,返回檢視的邏輯名稱-->根據返回的檢視的邏輯名稱在struts.xml檔案中找到對應的result-->根據result中的檢視相對路徑,找到result中的檢視-->將該檢視返回給前端介面。

strut2的六大配置檔案:

  1. default.properties
  2. struts-default.xml
  3. struts-plugn.xml
  4. struts.xml
  5. struts.properties
  6. web.xml

struts2中對servletAPI的使用:

  • 實現Aware介面
  • 通過servletActionContext靜態方法
  • 通過ActionContext獲取
  • 起主要作用的攔截器ServletConfig

struts2接收前端傳遞過來資料的方式:

  • 通過action的成員變數接收
  • 定義一個model類,前端傳遞引數時候,通過ognl表示式來提取
  • 通過實現modelDriver介面,將前端提交的引數,賦值給model物件的成員變數
  • 接收前端傳遞過來的資料為陣列(陣列中的元素是String或者是Model類)或者集合

struts2返回給前端json資料

  1. 使用struts2的一個json外掛:struts-json-plugin.jar
  2. 負責處理json資料返回的 配置檔案中的package要繼承自json-default包
  3. 負責返回json資料的result需要將type設定為json
  4. 負責返回json資料的result標籤中如果沒有內容,則將action中所有提供了get方法的成員變數,都轉換成json物件返回給前端
  5. result的子標籤param

相關文章