struts2获取request对象的四种方式

解耦:使得我们使用struts2测试时不需要启动服务器,在一定的程度上,能提高我们的开发效率.具体实现思路,通过ActionContext对象获取,代码如下:

[java]  view plain  copy
  1. //第一种获取requet对象方法---HttpServletRequest对象的attributes(解耦)  
  2. Map<String, Object> request = (Map)ActionContext.getContext().get("request");  
  3. //第二种获取request对象方法(解耦)  
  4. HttpServletRequest request = (HttpServletRequest)ActionContext.getContext().get(StrutsStatics.HTTP_REQUEST);  

1.首先实现ServletRequestAware接口,然后设置全局变量HttpServletRequest request,最后实现ServletRequestAware接口的setServletRequest方法,代码如下:

  1. HttpServletRequest request;  
  2.   
  3. @Override  
  4. public void setServletRequest(HttpServletRequest request) {  
  5.     // TODO Auto-generated method stub  
  6.     this.request = request;  
  7. }  
2.通过获取ServletActionContext获取HttpServletRequest对象,代码如下;
[java]  view plain  copy
  1. HttpServletRequest request = ServletActionContext.getRequest();  



猜你喜欢

转载自blog.csdn.net/mr_z_csdn/article/details/79968061