1. 程式人生 > >Struts 重點小結

Struts 重點小結

官網: http://struts.apache.org/

Struts1:
  JSP + Servlet + JavaBean + BaseServlet(它裡面叫ActionServlet)

開發流程:
 1、準備Jar包(到Blank專案中拷)
 2、將struts1的核心類配置到web.xml ---配servlet
 3、寫一個控制器(Action)---EJB
 4、寫返回頁面(JSP頁面)
 5、寫struts1的配置檔案:struts-config.xml---把我們寫的Action和返回頁面配置到該檔案中   Action要配成“.do”結束
 6、測試


Struts2
 

Filter 
webwork---xwork
開發流程:
 1、準備Jar包(到Blank專案中拷)
 2、將struts2的核心類配置到web.xml -------配過濾器: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
 3、寫一個控制器(Action)--EJB=JavaBean+業務方法(預設String execute() )
 4、寫返回頁面(JSP頁面)
 5、寫struts2的配置檔案:struts.xml---把我們寫的Action和返回頁面配置到該檔案中
 6、測試

 

Struts2能幫我們做:
1、幫助我們把前端頁面上傳的引數獲取,並封裝成EJB(Action物件)
2、幫助我們自動把資訊存放到request中
3、幫我們實現頁面轉發(根據struts.xml中的結果頁面配置 <action>中的<result>標籤配置)
4、以上3個是核心功能。另外,還有驗證框架、攔截器、轉換器、國際化、檔案上傳下載、頁面標籤庫,表單可配置,對Ajax的支援,資料庫連線和事務等!


檢視Struts校驗框架的ActionName-validation.xml中的校驗型別可以填哪一些:
struts-2.3.20-all\struts-2.3.20\lib\xwork-core-2.3.20.jar  -->
用360開啟 --> 檢視xwork-core-2.3.20.jar\com\opensymphony\xwork2\validator\validators 目錄中的default.xml

1) 如果想在Action方法中手動把自定義資料放放容器中,可以使用ActionContext類,來獲取Action的上下文,進而獲得Action相關的app和session容器(Map型別),進行存(put方法)和取(get方法)。
2) 如果想在Action方法中採用原裝的servlet環境中的一些類(ServletContext,HttpRequest,HttpResponse)進行做功能,那麼可以使用ServletActionContext類。如:
    ServletActionContext.getServletContext()
    ServletActionContext.getRequest()
    ServletActionContext.getResponse()

※校驗框架配置檔名: ActionName+"-validation.xml"
※轉換器配置檔名: ActionName+"-conversion.properties"


檔案上傳Action中,與file元件相關的幾個屬性的名字:
1) file元件直接對應的屬性: 型別為File,名字為表單元件中的引數名, 本例為:upload 
2) 上傳檔名 = file屬性名(同表單引數名)+ "FileName"
3)上傳檔案型別 = file屬性名(同表單引數名)+ "ContentType"