//演示如何获得ServletAPI
public class Demo5Action extends ActionSupport{
//方式一: 解耦的Api访问Servlet各个域
// 操作: request|session|application域
public String execute() throws Exception {
//session域
Map<String, Object> session = ActionContext.getContext().getSession();
//application域
Map<String, Object> application = ActionContext.getContext().getApplication();
//request域
//Map<String, Object> request = (Map<String, Object>) ActionContext.getContext().get("request");
ActionContext ac = ActionContext.getContext();
//-------------------------------------------------------------------------------------
session.put("name", "sessionTom");
application.put("name", "applicationTom");
ac.put("name", "requestTom");
return SUCCESS;
}
}
//演示如何获得ServletAPI
public class Demo6Action extends ActionSupport{
//方式二:获得原生Servlet对象
// 操作: request|session|application域
public String execute() throws Exception {
//获得原生request对象
HttpServletRequest request = ServletActionContext.getRequest();
//获得原生response对象
HttpServletResponse response = ServletActionContext.getResponse();
//获得原生Session对象
HttpSession session = request.getSession();
//获得ServletContext对象
ServletContext servletContext = ServletActionContext.getServletContext();
//-------------------------------------------------------------------------------
request.setAttribute("name", "requestJerry");
session.setAttribute("name", "sessionJerry");
servletContext.setAttribute("name", "applicationJerry");
return SUCCESS;
}
}
//演示如何获得ServletAPI
public class Demo7Action extends ActionSupport implements ServletRequestAware {
private HttpServletRequest request;
//方式3:实现接口获得servlet对象
// 操作: request|session|application域
public String execute() throws Exception {
request.setAttribute("name", "requestJack");
return SUCCESS;
}
public void setServletRequest(HttpServletRequest request) {
this.request=request;
}
}