永发信息网

page,request,session和application有什么区别

答案:2  悬赏:60  手机版
解决时间 2021-11-16 23:17
  • 提问者网友:椧運幽默
  • 2021-11-16 02:18
page,request,session和application有什么区别
最佳答案
  • 五星知识达人网友:一把行者刀
  • 2021-11-16 02:53
application:全局作用范围,整个应用程序共享,就是在部署文件中的同一个webApp共享,生命周期为:应用程序启动到停止。

session:会话作用域,当用户首次访问时,产生一个新的会话,以后服务器就可以记住这个会话状态。生命周期:会话超时,或者服务器端强制使会话失效。

request:请求作用域,就是客户端的一次请求。

page:一个JSP页面。

以上作用范围使越来越小, request和page的生命周期都是短暂的,他们之间的区别就是:一个request可以包含多个page页(include,forward以及filter)。举个简单的例子:

jsp1.jsp


jsp2.jsp


运行jsp1.jsp可以正常显示数据,因为作用范围是request,相当于调用了request.setAttribute()方法,jsp2页通过request.getAttribute来获得这个bean.如果把request改为page,就会抛出NullPointerExceptioin.

一个请求可以跨好几个JSP(include和forword)和Servlet(如filter).不过这里有一个需要注意的就是区别 和<%@ include %>.如果上面的改为<%@ include file="jsp2.jsp" %>,即使scope为page也是正确的,<%@ include %>是编译时包含,是运行时包含.前者就相当于宏,编译时替代,后者相当于函数,运行时返回.
全部回答
  • 1楼网友:佘樂
  • 2021-11-16 04:05
page指当前页面,在一个jsp页面里有效 ;
request 指从http请求到服务器处理结束,返回响应的整个过程,在这个过程中使用forward方式跳转多个jsp,在这些页面里你都可以使用这个变量;
session 有效范围当前会话,从浏览器打开到浏览器关闭这个过程;
application它的有效范围是整个应用;
总体来说,就是作用域不同。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯