作用域 转发与重定向

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/Stephen_mu/article/details/88721810

     
     ①、转发是一次请求,一次响应,而重定向是两次请求,两次响应

  ②、转发:servlet和jsp共享一个request,重定向:两次请求request独立,所以前面request里面setAttribute()的任何东西,在后面的request里面都获取不到

  ③、转发:地址栏不会改变,重定向:地址栏发生变化。


pageContext,request,session,application四大作用域的区别

一、 生命周期:

page:    存在page中的变量,只作用于当前的jsp页面,当发生跳转、重定向、定时刷新时,将随之销毁;


request:存在request中的变量,作用于一次HTTP请求到服务器处理结束,返回响应的整个过程,该变量可以随着forward的方式跳转到多个jsp中,一但刷新页面,它们将重新计算;


session:存在Session中的变量,作用于一次会话中,从打开浏览器到关闭浏览器过程中,将一直累加;(若想在再次打开浏览器时,变量仍然存在,则可以将session的JSESSIONID存到Cookie中,在给cookie一个存活时间)


application:存在application中的变量,作用于整个应用中,即从应用启动到应用结束,如果不进行手工删除,它们将一直可以使用,而且这些变量所有用户均可使用。
二、 作用范围:

page:用户请求的当前页面;
request:用户请求访问的当前组件,以及和当前web组件共享同一用户请求的web组件;
session:同一个Http会话中的web组件共享;
application:整个web应用的所有web组件共享,即只要是同一个服务器下的均可使用。
 

猜你喜欢

转载自blog.csdn.net/Stephen_mu/article/details/88721810