struts1.x的初步認識

一、struts1.x的目標是提供一個開發web應用的開源框架,是基於mvc設計模式來開發程序。

二、struts1.x的ActionServlet執行流程:在web.xml配置好struts1.x的配置文件信息struts-config.xml,例:

<?xml version="1.0" encoding="ISO-8859-1" ?>

<!DOCTYPE struts-config PUBLIC

"-//Apache Software Foundation//DTD Struts Configuration 1.1//EN"

"http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">

<struts-config>

<form-beans>

<form-bean name="loginForm" type="com.struts.LoginActionForm"/>

</form-beans>

<action-mappings>

<action path="/login"

type="com.struts.LoginAction"

name="loginForm"

scope="request"

validate="false"

>

<forward name="success" path="/dyna_actionform.jsp"/>

</action>

1、瀏覽器發出與ActionServlet配置相匹配的請求時,服務器將請求交給struts,即ActionServlet

2、接着調用String path = processPath(request, response);將請求進行截取。

3、接着調用ActionMapping mapping = processMapping(request, response, path);通過截取到的path找到與之相應的ActionMapping

4、在ActionMapping中找到name屬性,查看scope(session或request)對應的內置對象中是否存在相應ActionForm對象,ActionForm form = processActionForm(request, response, mapping);若有,則創建,若無,則創建,並且將ActionForm放在scope中

5、接着將表單數據傳給ActionForm,利用processPopulate(request, response, form, mapping);對錶單數據進行蒐集

6、接着Action action = processActionCreate(request, response, mapping);創建Action對象,接着ActionForward forward=  processActionPerform(request, response,action, form, mapping);調用執行相應的業務層,持久層對象 的方法,返回一個轉向信息

7、最後processForwardConfig(request, response, forward);在forward標籤中找到與轉向信息相匹配的轉向頁面

注意:

1.ActionMapping封裝action信息,ActionForward封裝forward信息 ,ActionConfig(map<key=path,value=ActionMapping>)存放ActionMapping配置信息,例:

    <action-mappings>——>ActionMapping

<action  path="/login"
  	  type="com.struts.LoginAction"
       name="loginForm"
       scope="request"
       validate="false"
>
<forward name="success" path="/dyna_actionform.jsp"/>——>ActionForward
</action>
</action-mapping>

2.FormBeanConfig存放ActionForm配置信息,FormBeans(map<key=name,value=FormBeanConfig>)存放FormBeanConfig配置信

例:<form-beans>——>FormBeanConfig

       <form-bean name="loginForm" type="com.struts.LoginActionForm"/>

       </form-beans>

3.ModuleConfig封裝了ActionConfig和FormBeans配置信息





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