zoukankan      html  css  js  c++  java
  • 二、访问Servlet Api

    一、访问Servlet Api

      1.struts2提供了三种方式去访问servlet api,ActionContext接口,Aware接口,ServletActionContext

    在Strut2中访问Servlet API有三种方式:

    1、通过ActionContext访问Servlet API,推荐使用这种,但是这种方案它获取的不是真正的事Servlet API。

    步骤:
    1).创建一个ActionContext

    • ActionContext context=ActionContext.getContext();

    2).通过context对象获取Servlet API

    • Map<String,Object> getApplication() 获取的是application中存储的所有信息 
    • Map<String,Object> getParameters() 相当于 request.getParameterMap();
    • Map<String,Object> getSession(); 获取的是session中存储的所有信息.
    • put(String key,Object value); 就相当于request.setAttribute();
    • Object get(String key) 就相当于request.getAttribute();

    2、通过注入方式(真正的Servlet API)

    通过实现*Aware接口获得Servlet API,比如:

    • ServletContextAware : 注入ServletContext对象
    • ServletRequestAware :注入 request对象
    • ServletResponseAware : 注入response对象

    比如获取HttpServletRequest对象:

    复制代码
     1 public class TestAction extends ActionSupport implements ServletRequestAware {
     2     HttpServletRequest request;
     3     @Override
     4     public String execute() {
     5         request.setAttribute("name", "requestTest");
     6         return "success";
     7     }
     8     
     9     @Override
    10     public void setServletRequest(HttpServletRequest request) {
    11         this.request = request;
    12     }
    13 
    14 }
    复制代码

    3、通过ServletActionContext(真正的Servlet API)

    通过ServletActionContext类中提供了静态方法可以直接获取Servlet API:

    1 //获取request
    2 HttpServletRequest request = ServletActionContext.getRequest();
    3 //获取session
    4 HttpSession session = request.getSession();
    5 //获取context
    6 ServletContext context = ServletActionContext.getServletContext();
  • 相关阅读:
    【JSOI 2008】 最大数
    【Usaco2008 Dec】Patting Heads
    【AHOI 2005】 约数研究
    【HAOI2007】反素数
    BZOJ3676 APIO2014回文串(manacher+后缀自动机)
    Luogu3804 【模板】后缀自动机(后缀自动机)
    后缀自动机学习笔记
    Codeforces ECR47F Dominant Indices(线段树合并)
    BZOJ1127 POI2008KUP(悬线法)
    BZOJ4652 NOI2016循环之美(莫比乌斯反演+杜教筛)
  • 原文地址:https://www.cnblogs.com/myz666/p/8454291.html
Copyright © 2011-2022 走看看