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>

  • 相关阅读:
    suse linux编译安装GCC报错
    suse linux 编译安装Apache时报“APR NOT FOUND”的解决方法
    LoadRunner监控Windows和Linux常见问题
    LR报-27727错误解决办法
    主机在virtualbox在NAT方式SSH访问
    清除hao123浏览器劫持小尾巴病毒
    在CentOS上,Servlet出现java.lang.NoClassDefFoundError
    构建第一个SSH的maven项目
    关于Oracle数据库sys用户登入的解惑
    ip route-static 命令的参数
  • 原文地址:https://www.cnblogs.com/shipeng22022/p/4614172.html
Copyright © 2011-2022 走看看