当前位置: 代码迷 >> J2EE >> 【代码意思!】
  详细解决方案

【代码意思!】

热度:198   发布时间:2016-04-17 23:47:59.0
【代码意思求助!】
import javax.servlet.http.HttpServletRequest;  
import javax.servlet.http.HttpServletResponse;  
import javax.servlet.http.HttpSession;  
  
import org.apache.struts2.ServletActionContext;  
  
import com.opensymphony.xwork2.ActionContext;  
import com.opensymphony.xwork2.ActionSupport;  
  
public class NonIoCServlet extends ActionSupport {  
    private String message;  
  
    public String getMessage() {  
        return message;  
    }  
  
    @Override  
    public String execute() {  
        ActionContext.getContext().getSession().put("msg",  
                "Hello World from Session!");  
  
        HttpServletRequest request = ServletActionContext.getRequest();  
        HttpServletResponse response = ServletActionContext.getResponse();  //这个response是什么用的呢?
        HttpSession session = request.getSession();  
  
        StringBuffer sb = new StringBuffer("Message from request: ");  
        sb.append(request.getParameter("msg"));  
        sb.append("<br>Response Buffer Size: ");  
        sb.append(response.getBufferSize());  //这个response里的内容是什么呢?
        sb.append("<br>Session ID: ");  
        sb.append(session.getId());  
  
        message = sb.toString();  
        return SUCCESS;  
    }  
}  


------解决方案--------------------
 HttpServletResponse response = ServletActionContext.getResponse(); 
这是与Servlet API耦合的访问方式,获取HttpServletResponse对象
也可以直接访问Servlet环境中的HttpRequest,HttpSession和ServletContext对象。通过ServletActionContext类提供的静态方法直接获取:

       HttpServletRequest request=ServletActionContext.getRequest();
       ServletContext context=ServletActionContext.getServletContext();
       HttpSession session=request.getSession();
       HttpServletResponse response=ServletActionContext.getResponse();
  相关解决方案