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

struts2获取request,session,application4种方式

2012-12-23 12:46 746 查看
第一种,依赖容器获取:

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();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: