page、pageContext、servletContext的区别

ServletContext是容器上下文,指当前的一个web应用的上下文

 

JSP网页本身,page对象是当前页面转换后的Servlet类的实例。从转换后的Servlet类的代码中,可以看到这种关系:Object page = this;在JSP页面中,很少使用page对象。

pageContext  javax.servlet.jsp.PageContext 的实例,该对象代表该JSP 页面上下文,使用该对象可以访问页面中的共享数据。常用的方法有getServletContext和getServletConfig等.

 

[java] view plaincopy
 
  1.    //使用pageContext 设置属性,该属性默认在page 范围内    
  2.   pageContext. setAttribute ("page" , "hello") ;    
  3.    
  4.   //使用request 设置属性,该属性默认在request 范围内     
  5.   request. setAttribute ("request" , "hello");    
  6.    
  7.   //使用pageContext将属性设置在request 范围中    
  8.   pageContext.setAttribute("request2″ , "hello" ,pageContext.REQUEST_SCOPE);    
  9.    
  10.   //使用session将属性设置在session 范围中     
  11.   session.setAttribute("session" , "hello");    
  12.    
  13.   //使用pageContext将属性设置在session范围中    
  14.   pageContext.setAttribute("session2″ , "hello" ,pageContext.SESSION_SCOPE);    
  15.    
  16.   //使用application将属性设置在application范围中     
  17.   application. setAttribute ("app" , "hello") ;    
  18.    
  19.   //使用pageContext 将属性设置在application 范围中    
  20.   pageContext.setAttribute("app2″ , "hello" , pageContext.APPLICATION_SCOPE);  
[java] view plain copy
 
  1.  //使用pageContext 设置属性,该属性默认在page 范围内    
  2. pageContext. setAttribute ("page" , "hello") ;    
  3.   
  4. //使用request 设置属性,该属性默认在request 范围内    
  5. request. setAttribute ("request" , "hello");    
  6.   
  7. //使用pageContext将属性设置在request 范围中    
  8. pageContext.setAttribute("request2″ , "hello" ,pageContext.REQUEST_SCOPE);    
  9.   
  10. //使用session将属性设置在session 范围中    
  11. session.setAttribute("session" , "hello");    
  12.   
  13. //使用pageContext将属性设置在session范围中    
  14. pageContext.setAttribute("session2″ , "hello" ,pageContext.SESSION_SCOPE);    
  15.   
  16. //使用application将属性设置在application范围中    
  17. application. setAttribute ("app" , "hello") ;    
  18.   
  19. //使用pageContext 将属性设置在application 范围中    
  20. pageContext.setAttribute("app2″ , "hello" , pageContext.APPLICATION_SCOPE);  

总的来说,pageContext和page都是jsp中的隐含对象,pageContext代表jsp页面的上下文关系,能够调用、存取其他隐含对象;

page代表处理当前请求的时候,这个页面的实现类的实例。

原文地址:https://www.cnblogs.com/keyi/p/6245040.html