zoukankan      html  css  js  c++  java
  • struts1.2原理

      struts1.2原理:基于mvc的web层 框架没有涉及到数据库。就是一个大型的servlet容器,处理一类请求如请求的结尾都是 “.do/.htm”

    把用户请求的内容提交到web.xml中找到处理的ActionServlet处理,然后在Struts-config.xml中找到具体哪个action来处理这个请求。

     

    web.xml中的处理

    <!-- Action Servlet Configuration -->
    <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>

    <!--这个参数就是用来解决配置文件过大,太大的问题,<param-value>可以用","来分隔多个struts-config.xml,struts-longin.xml,struts-read.xml文件

    以及下面提到的通配符使用,也可以帮助解决配置文件过大的问题.总体思想是把大的分成小的,也就是分类存放-->


    <load-on-startup>1</load-on-startup>
    </servlet>


    <!-- Action Servlet Mapping -->
    <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
    </servlet-mapping>

     

     

       Struts-config.xml中的处理,找到具体哪个action来执行处理

       这里可以使用*来通配某一类路径

    用{}来对应*星号内容.

    <!-- ==== Action Mapping Definitions ==== -->
    <action-mappings>

    <!-- Display any other page (Logon, MainMenu) - Wildcards must come first! -->
      <action
        path="/*"
        forward="/{1}.jsp">
      </action>

     

      <action
        path="/Edit*"
        extends="//BaseAction"
        parameter="Edit"
        validate="false"/>

      <action
        path="/Save*"
        extends="//BaseAction"
        parameter="Save"
        cancellable="true"
        validate="true">
        <forward
          name="Success"  
          path="/MainMenu.do"/>
      </action>

  • 相关阅读:
    工具链中 Binutils的内容
    Qt 4.5 新功能逐一看 – 性能优化
    qt 打不开 用于触摸屏校准的文件
    Unicode 编码范围
    Android OpenGL ES 分析与实践
    Armlinux GCC 交叉编译工具
    二维矢量图形算法加速标准 OpenVG
    电路和程序一样,不是设计出来的,是调出来的
    电子元件又一话电容篇
    TVS管
  • 原文地址:https://www.cnblogs.com/shipeng22022/p/4614172.html
Copyright © 2011-2022 走看看