当前位置:首页 > Windows程序 > 正文

Struts2学习笔记(五)

2021-03-29 Windows程序

在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();

Struts2学习笔记(五)——Action访问Servlet API

温馨提示: 本文由Jm博客推荐,转载请保留链接: https://www.jmwww.net/file/69762.html