struts2访问三大域和参数

Posted 时间沉淀美好

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了struts2访问三大域和参数相关的知识,希望对你有一定的参考价值。

<strong>@Override
	public String execute() throws Exception 
	
		//在action中访问三大域和参数 简化开发
		//思想上的问题  松耦合 防侵入
		//获得request
		Map<String, Object> requestScope=(Map<String, Object>) ActionContext.getContext().get("request");
		//获得session
		Map<String, Object> sessionScope=(Map<String, Object>) ActionContext.getContext().getSession();
		//获得application
		Map<String, Object> applicationScope=(Map<String, Object>) ActionContext.getContext().getApplication();
		//获得参数
		Map<String, Object> params=ActionContext.getContext().getParameters();
		
		requestScope.put("name","requestTom");
		sessionScope.put("name","sessionTom");
		applicationScope.put("name","applicationTom");
		
		String[] names=(String[]) params.get("name");
		System.out.println(Arrays.toString(names));
		
		return SUCCESS;
	</strong>


原生servlet操作三大域繁琐,struts2使用ActionContext去访问三大域。我们可以写更少的代码实现更多的功能。当然如果想获得原生servlet技术中的对象,也是可以得,但是灰常不建议那么用。


@Override
	public String execute() throws Exception 
	
		//ServletActionContext对象 获得 原生的 Servlet对象
		HttpServletRequest request = ServletActionContext.getRequest();
		HttpServletResponse response =ServletActionContext.getResponse();
		HttpSession session = request.getSession();
		ServletContext context = ServletActionContext.getServletContext();
		return SUCCESS;
	


以上是关于struts2访问三大域和参数的主要内容,如果未能解决你的问题,请参考以下文章

java利用myeclipse自带三大框架搭建三大框架(Hibernate+Struts2+Spring)过程详解

面向对象三大特征之多态

转 :手动配置三大框架整合:Spring+Struts2+mybatis

Struts2 为什么被淘汰?自己作死!

java 的 struts2 Spring Hibernate 三大框架的整合

struts2-环境搭建-访问流程-配置详解-常量配置-类详解