首页 / 技术 / 正文

JavaWeb中的九大内置对象、四大作用域、session的生存周期

2015年09月17日 1 条评论 ... 技术

JSP中的九大内置对象

JavaWeb中,JSP引擎在将JSP转译为 Java 文件时,就创建了一系列对象,这些内置对象不需要声明和实例化,可以直接进行引用,这九大内置对象分别是:out,request,response,session,application,exception,cookie,config,page。在 JSP 编写的时候,直接对这九大内置对象进行操作即可实现大部分的数据传递和动态数据显示等基础功能。以下简要介绍其中部分对象的作用和实例。

1.out 对象

out 对象的主要作用是向客户端输出数据,主要是对数据流进行的操作,比如常见的方法:

out.print(type):输出数据。此外还有对缓存的进行操作,例如获取服务器剩余 buffer 的获取方法。

out.println("剩余缓存大小为:")  ;
out.println(out.getBufferSize()-out.getRemaining());

2.response 对象

response 对象的作用是向客户端发送请求后的数据,可以实现设置相应 contentType ,设置重定向页面,定时刷新页面,使用 cookie 等功能。

例如,对页面进行重定向时可以编写:

response.sendRedirect("index.jsp");

例如,要设置刷新页面可以使用 Refresh 写:

response.setHeader("Refresh","1;URL=xxx.jsp");

其中第二个参数中的1代表着1秒钟后刷新,URL设置的是跳转的页面,如果是自刷新的话,可以设置为自己的页面。

3.session 对象

session 对象是浏览器通用的,session 的作用是在一段会话期间,总是保存了相应的信息,常用于登录存储状态等。而 jsp 中的 session 对象可以保存信息,设置失效时间等。

session 可以使用 getAttribute(名,值) 和 setAttribute(名,值) 的方式来设置和获取变量。

值得注意的是,session 会在以下这几种情况下失效:

关闭浏览器;

关闭网页服务器;

用户未向服务器提出请求超过预设的时间,Tomcat 服务器预设时间为30分钟;

运行程序结束 session;

4.application 对象

application 对象是将数据存储在服务器中,所用用户都可以共享使用,此对象是由服务器创建,也必须由服务器清除。使用方法都是使用 getAttribute(名,值) 和 setAttribute(名,值)  的方法,但是建议不要经常使用,因为过多使用会增加服务器的负载。

5.page 对象

page 对象其实是 pageContext ,其作用范围是这个页面,突破这个页面则会失效。

 

四大作用域

四大作用域实则是变量的存活周期,四大作用域分别是:page、request、session、application。这四大作用域如下:

page:在本页中有效,跳出页面则失效;

request:跨页面作用,一般都是用于表单提交等;

session:在一定会话期间使用;

application:总是有效,关闭服务器后失效;

 

session的生存周期

session 的生存周期在不同的脚本运行环境下默认设置是不一样的,一般默认 PHP 和 .NET 的默认 session 是20分钟,ASP 的 session 是 10分钟,而 JSP 是30分钟,在默认情况下,用户在关闭网页后,session 就已经失效了,当然了,在实际的操作中,session 一般都被网站设计者限定了有效时间,比如常见的登陆时勾选的“保持登陆xx时间”这般。

1 条评论

Loading...
  1. 基础知识

    学习学习 :idea:

    2015-09-22 [回复]

发布评论