1. 程式人生 > >Struts2 配置詳解

Struts2 配置詳解

name con 默認 -name 動態 redirect man 執行過程 struts

1.Struts2登錄執行過程
頁面發送請求->核心控制器(StrutsPrepareAndEecuteFileter)
->Action->Result->返回頁面
2.配置web.xml
<filter>
<filter-name>struts</filter-name>
<filter-class>
org.apache.struts.dispatcher.ng.filter.StrutsPrepareAndEecuteFileter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
3.Struts控制器

  • 兩部分組成:核心控制器(Filter):用於攔截用戶請求,對請求進行處理
  • 業務控制器(Action):調用相應的Model類實現業務處理,返回結果

4.Struts2執行過程
發送請求->調用execute方法-調用業務方法->返回業務結果->返回邏輯視圖名
->forward到物理視圖->生成響應內容->輸出響應

5.動態方法調用
作用:減少Action
<actionname="user"class="com.java.action.HelloAction">
<resultname="login">/login.jsp</result>
<resultname="register">/register.jsp</result>
</action>
<actionname="*user"class="com.java.action.HelloAction" method=”{1}”>
<resultname="user">/{1}.jsp</result>
</action>

--註意:需要打開
<constant name=”struts.enable.DynamicMethodInvocation”value=”true”>

--配置Result
結果類型
Dispatcher默認轉發
Redirect重定向
redirectAction重定向到Action

<actionname="*user"class="com.java.action.HelloAction" method=”{1}”>
<resulttype=”redirect”>/{1}.jsp</result>
</action>

<actionname="dologin"class="com.java.action.HelloAction" method=”dologin”>
<resulttype=”redirectAction”>${nextDispose}</result>
</action>

<actionname="manager">
<result>manager.jsp</result>
</action>
<actionname="common">
<result>common.jsp</result>
</action>

<packagename="default"extends="struts-default">
在default-action-ref後面在action前面
<global-results>
<result name=”error”>/error.jsp</result>
</global-results>

</package>

Struts2 配置詳解