评论

收藏

[JSP] Struts2访问servlet分享

开发技术 开发技术 发布于:2021-10-23 22:48 | 阅读数:293 | 评论:0

一:访问或添加request/session/application属性
public String scope() throws Exception{
   ActionContext ctx = ActionContext.getContext();
   ctx.getApplication().put("app", "应用范围");//往ServletContext里放入app
   ctx.getSession().put("ses", "session范围");//往session里放入ses
   ctx.put("req", "request范围");//往request里放入req
   return "scope";
}

JSP:
<body>
  ${applicationScope.app} <br>
  ${sessionScope.ses}<br>
  ${requestScope.req}<br>
 </body>

二:获取HttpServletRequest / HttpSession / ServletContext / HttpServletResponse对象

方法一,通过ServletActionContext.类直接获取:
public String rsa() throws Exception{
     HttpServletRequest request = ServletActionContext.getRequest();
     ServletContext servletContext = ServletActionContext.getServletContext();
     request.getSession() 
     HttpServletResponse response = ServletActionContext.getResponse();
     return "scope";
}
方法二,实现指定接口,由struts框架运行时注入:
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;
     }
}

关注下面的标签,发现更多相似文章