zoukankan      html  css  js  c++  java
  • struts2 实现过程和xml配置

    实现过程:

    Web容器收到 请求(HttpServletRequest)它将请求传递给一个标准的的过滤链包括
    (ActionContextCleanUp)过滤器,然后经过Other filters(SiteMesh ,etc),接下来需要调用FilterDispatcher核心控制器,然后它调用ActionMapper确定请求哪个Action,ActionMapper返回一个收集Action详细信息的ActionMaping对象。
    接下来FilterDispatcher将控制权委派给ActionProxy,ActionProxy调用配置管理器(ConfigurationManager) 从配置文件中读取配置信息(struts.xml),然后创建ActionInvocation对象,ActionInvocation在调用Action之前会依次的调用所用配置拦截器(Interceptor N) 一旦执行结果返回结果字符串ActionInvocation负责查找结果字符串对应的(Result)然后执行这个Result Result会调用一些模版(JSP)来呈现页面,之后拦截器(Interceptor N)会再被执行(顺序和Action执行之前相反)最后响应(HttpServletResponse)被返回在web.xml中配置的那些过滤器和(核心控制器)(FilterDispatcher)。
     
     
    action类:
    描述业务逻辑,其中execute()方法返回一个字符串值,如sucess
    struts.xml  :将所有东西如jsp  action 等连在一起。
    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
    <struts>
    	<package name="user" namespace="/User" extends="struts-default">
    		<action name="Login">
    			<result>/login.jsp</result>
    		</action>
    		<action name="Welcome" class="com.yiibai.user.action.WelcomeUserAction">
    			<result name="SUCCESS">/welcome_user.jsp</result>
    		</action>
    	</package>
    </struts> 
    web.xml:配置Web应用程序部署描述符(web.xml)文件Struts2的集成到Web项目
    <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="3.0" 
    	xmlns="http://java.sun.com/xml/ns/javaee" 
    	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
      <display-name></display-name>	
      <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list>
      <filter>
      	<filter-name>struts2</filter-name>
      	<filter-class>
      		org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
      	</filter-class>
      </filter>
      <filter-mapping>
      	<filter-name>struts2</filter-name>
      	<url-pattern>*.action</url-pattern>
      </filter-mapping></web-app>


     
     
  • 相关阅读:
    团队项目-典型用户及用户场景分析
    课堂小练习-找“水王”
    课堂小练习—电梯
    团队项目—用户需求调研报告
    课堂小练习
    团队项目的NABC
    梦断代码—随笔三
    梦断代码—随笔二
    结对开发5_循环二维数组最大字数组
    结对开发4_循环数组的最大值
  • 原文地址:https://www.cnblogs.com/lls002-1435/p/5276604.html
Copyright © 2011-2022 走看看