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>