zoukankan      html  css  js  c++  java
  • Struts2的Action中获取request对象的几种方式?

     

    1. 通过ActionContext.getSession获取

    2. 通过ServletActionContext.getRequest()获取

    3. 通过SessionAware接口注入

    4. 通过ServletRequestAware接口注入

     

    第一种获取requet对象方法---HttpServletRequest对象的attributes(解耦)  

        Map<String, Object> request = (Map)ActionContext.getContext().get("request");  

     

    第二种HttpServletRequest request = ServletActionContext.getRequest(); 

     

    三四种方法需要 Action类实现相应的拦截器接口

      1,实现ServletRequestAware接口,  

      2,实现 setServletRequest方法。  

        Struts2在调用 execute方法之前就会先调用 setServletRequest方法

    并将 request参数传入这个方法

     

    通过IOC的方式注入 需要的Servlet API

    public class UserAction extends ActionSupport implements ServletResponseAware, ServletRequestAware{

      private String username;

      private int password;

     

      HttpServletRequest req;

      HttpServletResponse resp;

     

      //实现ServletRequestAware 通过IOC的方式 获得request

      @Override

      public void setServletRequest(HttpServletRequest req) {

         this.req = req;

      }

      //实现ServletResponseAware 通过IOC的方式获得Response

       

    Java Program!
  • 相关阅读:
    gps示例代码
    UART 串口示例代码
    Linux soft lockup 和 hard lockup
    Linux嵌入式kgdb调试环境搭建
    Linux嵌入式GDB调试环境搭建
    Linux-workqueue讲解
    USB之hub3
    USB之设备插入波形变化2
    我运营公众号这一个月
    从12306帐号泄漏谈用户密码安全
  • 原文地址:https://www.cnblogs.com/programb/p/12995915.html
Copyright © 2011-2022 走看看