I. access or add request/session/application attributes
Copy codeThe Code is as follows:
Public String scope () throws Exception {
ActionContext ctx = ActionContext. getContext ();
Ctx. getApplication (). put ("app", "Application Scope"); // Add the app to the ServletContext
Ctx. getSession (). put ("ses", "session range"); // put ses into the session
Ctx. put ("req", "request range"); // Add req to the request
Return "scope ";
}
JSP:
Copy codeThe Code is as follows:
<Body>
$ {ApplicationScope. app} <br>
$ {SessionScope. ses} <br>
$ {RequestScope. req} <br>
</Body>
2. Get the HttpServletRequest/HttpSession/ServletContext/HttpServletResponse object
Method 1: Use the ServletActionContext. Class to directly obtain:
Copy codeThe Code is as follows:
Public String rsa () throws Exception {
HttpServletRequest request = ServletActionContext. getRequest ();
ServletContext servletContext = ServletActionContext. getServletContext ();
Request. getSession ()
HttpServletResponse response = ServletActionContext. getResponse ();
Return "scope ";
}
Method 2: implement the specified interface, which is injected during the struts framework runtime:
Copy codeThe Code is as follows:
Public class HelloWorldAction implements ServletRequestAware, ServletResponseAware, ServletContextAware {
Private HttpServletRequest request;
Private ServletContext servletContext;
Private HttpServletResponse response;
Public void setServletRequest (HttpServletRequest req ){
This. request = req;
}
Public void setServletResponse (HttpServletResponse res ){
This. response = res;
}
Public void setServletContext (ServletContext ser ){
This. servletContext = ser;
}
}