struts2 servlet之间通信

Posted 下路派出所

tags:

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

Servlet之间通信的方式有两大类,每个类有三种不同的方法

1.request 

2.session

3.application

 

不实现ServletContextAware,SessionAware,ServletRequestAware这三个接口的通信

		HttpServletRequest request = ServletActionContext.getRequest();
		request.setAttribute("request_username", "username");
		HttpServletResponse response = ServletActionContext.getResponse();
		
		//这个是Servlet的session
//		HttpSession session = request.getSession();
//		session.setAttribute("session_username", "username");
ServletContext servletContext = ServletActionContext.getServletContext(); servletContext.setAttribute("application_username", "username");

  

实现ServletContextAware,SessionAware,ServletRequestAware这三个接口的通信

public class Servlet2Action extends ActionSupport implements
		ServletContextAware,SessionAware,ServletRequestAware {

	private HttpServletRequest request;
	private ServletContext servletContext;
	private Map<String,Object> sessionMap;

	/**
	 * {}struts2包装以后的session,本质上是一个map
		[email protected] servlet中的application
		[email protected]  struts2包装后的request
	 */
	public void setSession(Map<String, Object> arg0) {
		this.sessionMap=arg0;
		sessionMap.
	}
	public void setServletContext(ServletContext arg0) {
		this.servletContext=arg0;
	}
	
	public void setServletRequest(HttpServletRequest arg0) {
		this.request=arg0;
	}
	public String testServelet()
	{
		System.out.println(sessionMap.toString());
		System.out.println(servletContext.toString());
		System.out.println(request.toString());
		return "servelet";
	}

}

  

在目标页面取出

   	request:${requestScope.request_username }<br>
   	session:${sessionScope.session_username }<br>
   	application:${applicationScope.application_username }<br>

  


以上是关于struts2 servlet之间通信的主要内容,如果未能解决你的问题,请参考以下文章

Struts2 与普通的java内通信 也就是所谓的 Action类 来获取servlet中request对象和response对象

Struts2 与普通的java内通信 也就是所谓的 Action类 来获取servlet中request对象和response对象

struts2做控制器相比servlet有啥优点

如何在嵌套片段内的两个子片段之间进行通信

片段和服务器之间的通信问题

与另一个片段通信的片段接口