07. struts2中對Action的管理方式

web.xml配置文件的常用代碼

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

StrutsPrepareAndExecuteFilter

  • Struts2核心控制器,它只負責攔截由<url-pattern>/*</url-pattern>指定的所有用戶的請求
  • 當用戶請求到達時,系統會根據web.xml中配置Filter過濾用戶的請求
  • 默認情況下,如果用戶的訪問路徑不帶有後綴或者是以.action的後綴作爲結尾,這時候請求會轉發給Struts2框架處理,否則Struts2會濾過這個請求處理
  • 當請求轉入Struts2框架時會先經過一系列的攔截器,然後再到Action

Action在struts1和struts2中的區別

  • Struts2會對每個請求都會產生一個Action,所以Struts2是線程安全的,屬於原型設計模式。
  • Struts1中的Action創建出來之後會放在緩衝中,屬於單例設計模式,在應用生命週期之內只會存在一個Action。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章