有的时候servlet里传值需要session等属性,但是在struts2中怎么就可以用这些属性呢,就看下边的代码就行了
第一种方法:
public String execute(){
ActionContext act=ActionContext.getContext(); //调用ServletActionContext方法
act.getApplication().put("application", "application"); //application
act.getSession().put("session", "session"); //session
act.put("request", "request"); //request
return "success";
}
前台直接el表达式即可
${applicationScope.application}<br/>
${sessionScope.session}<br/>
${requestScope.request}<br/>
只需要添加和访问这三个属性时推荐用第一种方法,当需要用到比如说用request对象获取某个值时用第二种方法
第二种方法:
public String execute() throws Exception{
HttpServletRequest request=ServletActionContext.getRequest();
ServletContext servletcontext=ServletActionContext.getServletContext();
request.setAttribute("request","request"); //request
request.getSession().setAttribute("session","session"); //session
servletcontext.setAttribute("application", "application"); //application
return "success";
}