Struts2之核心概念

    技术2025-12-18  10

    声明:并非原创

    主要介绍三个组成部分Action、Result、Interceptor的原理和使用方法

    1 Struts体系结构

     

    工作机制:

     

    2 Struts配置文件

    web.xml struts.xml 等

     

    3 Struts 常用配置解析

    3.1>使用<include>标签重用配置文件

    默认是struts.xml,但如果package、action、interceptors等配置比较多时,都放到一个struts.xml不太容易维护

    假设有一个配置文件,文件名为newstruts.xml

     

    Struts.xml引用newstruts.xml文件的代码如下

     

    注意:

     

    3.2>action配置

     

     

    除了在struts.xml中配置别名,还可以通过请求参数来描述指定动作(并不需要在struts.xml中配置),格式如下:

    http://localhost:8080/contextPath/actionName!method.action

     

    action设置参数

    struts2中可以通过<param>标签指定任意多个参数

    当struts2在调用execute之前,param1和param2的值就已经是相应参数的值了,因此,在execute方法中可以直接使用param1和param2。

     

    3.3> result配置

     

    3.4>拦截器配置

    3.5>包配置

     

     

     

    3.6>Action配置

     

     ===============================================================

    2013-3-10

    提问:Struts2的Action并不带有任何Web容器相关的对象,Action中又如何与Web容器进行通信并获取Web容器的相关对象呢? 刚刚我们提到Struts2会为每个Http的请求建立一个执行环境和数据环境。其中,数据环境就成为了Action获取Web容器的基础。 所以,当Action需要获取Web容器的相关对象,需要通过数据环境来进行。

    获得Web容器对象(repuest response session等)

    最简单的方法:

    使用org.apache.struts2.ServletActionContext类

    HttpServletRequest request = ServletActionContext.getRequest();

    HttpServletResponse response = ServletActionContext.getResponse();

    HttpSession session = request.getSession();

    最新回复(0)