• struts执行过程


            通过jsp中的form表单中的action属性,在WEB-INF文件夹下的web.xml文件中找到对应的<servlet-mapping>中找到对应的<servlet-name>,再在<servlet>中通过该<servlet-name>找到<servlet-class>,确认为ActionServlet,即,struts框架,然后在WEB-INF文件夹下的struts-config.xml文件的<action-mappings>中的<action>中通过jsp中的form表单中的action(对应<action>中的path)属性找到对应的name和type,即ActionForm和Action,先通过生成实例执行ActionForm中的validate()方法,出错则调到<action>中的input属性页面,没有出错则通过生成实例执行Action中的execute()方法,再该方法中转向响应的jsp页面完成最终的客户内容显示。

      所以总体上,提交表单后,先到项目文件夹下的WEB-INF文件夹下的web.xml文件中确认为Struts框架,即表单接收方为org.apache.struts.action.ActionServlet,再到项目文件夹下的WEB-INF文件夹下的struts-config.xml文件中找到对应的ActionForm和Action开始执行。

        web.xml文件:

    <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
    <param-name>config</param-name>
    <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <init-param>
    <param-name>debug</param-name>
    <param-value>3</param-value>
    </init-param>
    <init-param>
    <param-name>detail</param-name>
    <param-value>3</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
    </servlet>
    <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
    </servlet-mapping>

        struts-config.xml文件:

    <struts-config>
    <form-beans>
    <form-bean name="helloForm"
    type="org.lxh.struts.form.HelloForm" />
    </form-beans>

    <global-exceptions />
    <global-forwards />
    <action-mappings>
    <action attribute="helloForm" input="/hello.jsp"
    name="helloForm" path="/hello" scope="request"
    type="org.lxh.struts.action.HelloAction">
    <forward name="show" path="/hello.jsp"></forward>
    </action>
    </action-mappings>

    <message-resources parameter="org.lxh.struts.ApplicationResources" />
    </struts-config> 

  • 相关阅读:
    SQL 函数以及SQL 编程
    查询练习(四十五道题)
    SQL server 高级查询
    SQL server 数据库 操作及简单查询
    T-SQL 语句
    SQL
    表单验证、实则表达式、事件
    视频插入代码
    插入地图
    网页布局小练
  • 原文地址:https://www.cnblogs.com/huhewei/p/13026852.html
Copyright © 2020-2023  润新知