您的位置:首页 > 移动开发

struts2获取request,session,application4种方式

2010-03-22 22:02 579 查看
第一种,依赖容器获取:

private Map request;
private Map session;
private Map application;
public ActionTest()
{
request=(Map)ActionContext.getContext().get("request");
session=ActionContext.getContext().getSession();
application=ActionContext.getContext().getApplication();
}


第二种,IoC方式,是通过依赖注入方式获取到对象,需要实现相应的接口为 RequestAware,SessionAware,ApplicationAware:

private Map<String,Object> request;
private Map<String,Object> session;
private Map<String,Object> application;

public void setRequest(Map<String, Object> request) {
this.request = request;
}

public void setSession(Map<String, Object> session) {
this.session = session;
}

public void setApplication(Map<String, Object> application) {
this.application = application;
}


第三种,获取的是原型:

private HttpServletRequest request;
private HttpSession session;
private ServletContext application;

public ActionTest()
{
request=ServletActionContext.getRequest();
session=request.getSession();
application=session.getServletContext();
}


第四种,通过IoC获取原型,需要实现ServletRequestAware,并且要实现setServletRequest方法:

private HttpServletRequest request;
private HttpSession session;
private ServletContext application;

public void setServletRequest(HttpServletRequest request)
{
this.request=request;
this.session=request.getSession();
this.application=session.getServletContext();
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: