Struts2_009_Servlet API耦合的访问方式值之ServletXxxAware

来源:互联网 发布:php爱奇艺vip解析源码 编辑:程序博客网 时间:2024/05/17 07:02

概述

  • 通过实现 ServletRequestAware, ServletContextAware 等接口的方式
  • 步骤
    1.实现ServletXxxAware接口
    2.实现其中的方法,并将参数存储为成员变量(会自动的被调用)
    3.使用成员变量

测试代码

TestServletXxxAware.java

package top.itcourse.aware;import javax.servlet.ServletContext;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.struts2.interceptor.ServletRequestAware;import org.apache.struts2.interceptor.ServletResponseAware;import org.apache.struts2.util.ServletContextAware;/* * 解耦方式访问web资源之ServletXxxAware: *             1.实现ServletXxxAware接口                 *             2.实现其中的方法,并将参数存储为成员变量(会自动的被调用) *             3.使用成员变量 */// 1.实现ServletXxxAware接口            public class TestServletXxxAware implements ServletRequestAware,ServletContextAware,ServletResponseAware{                  private HttpServletRequest request;                  private ServletContext application;                  private HttpServletResponse response;                  // action方法                  public String execute() {                                    // 3.使用成员变量                                    System.out.println("request: " + request);                                    System.out.println("application: " + application);                                    System.out.println("response: " + response);                                    // 其它能从request中获取的东西都可以获取,比如session、参数等等                                    System.out.println("session: " + request.getSession());                                    return "success";                  }                  // 2.实现其中的方法,并将参数存储为成员变量                  @Override                  public void setServletRequest(HttpServletRequest request) {                                    this.request = request;                  }                  @Override                  public void setServletContext(ServletContext application) {                                    this.application = application;                  }                  @Override                  public void setServletResponse(HttpServletResponse response) {                                    this.response = response;                  }}

结果

微信公众号:JavaWeb架构师


其它



- 源码下载

关注下方公众号,回复:struts2_course.code
  • 欢迎加入交流群:451826376

  • 更多信息:www.itcourse.top

完整教程PDF版本下载

阅读全文
0 0
原创粉丝点击