jsp中的作用域有哪些

jsp中的作用域有:1、pageContext(页面作用域);2、request(请求作用域);3、session(会话作用域);4、application(应用程序作用域)。pageContext对象的作用范围仅限于用户请求的当前页面。

jsp中的作用域有哪些-Worktile社区

1、pageContext(页面作用域)

page对象的作用范围仅限于用户请求的当前页面。如果把变量放到pageContext里,就说明它的作用域page,它的有效范围只在当前jsp页面里。它的主要功能有:

  • 域对象功能,当前页面和当前页面中的标签共享数据
  • 代理其他域对象功能
  • 获取其他内置对象

pageContext的域对象功能:

pageContext也是域对象,它的范围是当前页面。它的范围也是四个域对象中最小的。

  • void setAttribute(String name, Object value);
  • Object getAttrbiute(String name, Object value);
  • void removeAttribute(String name, Object value);

2、request(请求作用域)

request里的变量可以跨越forward前后的两页。但是只要刷新页面,它们就重新计算了。如果把变量放到request里,就说明它的作用域是request,它的有效范围是当前请求周期。因为请求对象对于每一个客户请求都是不同的,所以对于每一个新的请求,都要重新创建和删除这个范围内的对象。主要用于一次请求在不同页面间的操作及参数传递,如表单的参数传递。

request的生命周期:

  • 创建:浏览器给服务器发送请求后,tomcat创建request对象封装请求数据;
  • 销毁:服务器给浏览器响应信息结束后销毁。

request域对象:

request域对象,一个存储数据的区域对象,是把request当成一个容器来存储数据,request域存储数据主要是用于在两个servlet之间传递数据。request作为域对象,常用的方法如下:

  • void setAttribute(String name, Object o) :往request域中设置值
  • Object getAttribute(String name) :从request域中取值
  • void removeAttribute(String name) :从request域中移除值

3、session(会话作用域)

如果把变量放到session里,就说明它的作用域是session,它的有效范围是当前会话,即从用户打开浏览器开始,到用户关闭浏览器这中间的过程。session的生命周期是在服务器正常的情况下,在名列前茅次调用request.getSession()方法时到程序调用HttpSession.invalidate()销毁该session时结束。当然你也可以在网页F12控制台删除session。主要是网站用户的信息。

Session生命周期:

  • 创建:当客户端名列前茅次访问某个servlet的时候,服务器会为当前会话创建一个SessionID,每次客户端向服务器发送请求时,都会将此sessionID携带过去,服务端会对此sessionID进行校验。
  • 参与活动:该次会话中,只要当前页面未全部关闭,再次打开不同浏览器会访问同一项目资源时属于同一次会话,只有此次会话全部关闭创建新的会话时才会变化。
  • 销毁:可调用销毁方法destroy()。

Session常用方法:

  • setAttribute(String key,Object value) :以key/value的形式保存对象的值
  • getAttribute(String key) :通过key获得对象值
  • removeAttribute(String key) :从session中删除指定key所对应的对象

4、application(应用程序作用域)

application即是ServeltContext,它的有效范围是整个应用,即整个web适用。ServletContext生命周期在服务器启动时创建,在服务器关闭时销毁。主要用于每个用户都可以访问的数据或多个客户端共享的数据。Application作用域就是服务器从启动到关闭的整段时间,在这个作用域内设置的信息可以被所有应用程序使用,application作用域上的信息传递是通过ServletContext实现的。

application常用方法:

  • getAttribute(String name):从application中获取信息
  • setAttribute(String name, Object value):在application作用域中设置信息

延伸阅读

jsp中的作用域从小到大排序

  1. PageContext(jsp页面)
  2. ServletRequest(一次请求)
  3. HttpSession(一次会话)
  4. ServletContext(整个web应用)

文章标题:jsp中的作用域有哪些,发布者:Z, ZLW,转载请注明出处:https://worktile.com/kb/p/35590

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
Z, ZLW的头像Z, ZLW
上一篇 2023年1月15日 下午8:19
下一篇 2023年1月15日 下午8:38

相关推荐

发表回复

登录后才能评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部