Servlet中的9大内置对象:
作用域:area(区域,范围)
作用域占有的两个方法:
set、get
1.page:在当前页面有效,(object类型,this)页面对象
2.request:再一次请求范围有效
3.session:再一次会话范围有效(一次会话可能包含多次请求,当页面重定向时也会失效)
4.application:在整个应用程序范围有效
5.out输出对象
6.response:重定向
7.pageContext:页面上下文对象
8.confing:配置对象
9.exception异常对象
其中
session:(存放用户自己的信息)
application:(存放全局需要的信息)
Session基于Cookie技术,也是通过键-值对来存储信息。
通过HttpSession session = request.getSession(); 来获得session(通常用于判断是否是新用户)
设置session属性:session.setAttribute(String name, Object obj);
获取session值:session.getAttribute(name);
返回客户端最后一次与会话相关的请求时间:session.getLastAccessedTime();
以秒为单位返回一个会话内两个请求最大时间间隔:session.getMaxInactiveInterval();
以秒为单位设置session的有效时间:session.setMaxInactiveInterval();【Tomcat的默认时间是30分钟,当然我们可以自己在xml中给该默认配置】
再会话中移除指定的对象:session.removeAttribute(name);
销毁session:session.invalidate();当session对象被销毁后将不可以再使用该session对象了。
application对象:
1.当Web服务器启动时,Web服务器会自动创建一个application对象。application对象一旦创建它将一直存在,知道关闭Web服务器。一个Web服务器通常有多个Web目录(网站)当Web服务器启动时它自动为每一个目录创建一个application,并且每个application与目录是一一对应的。
访问同一个(目录)网站的用户都共享一个application对象,因此application对象可以实现多用户之间的数据共享。
2.application对象的作用范围:application对象是一个应用程序级别的对象,它作用于当前网站,所有访问当前网站的用户都共享一个application对象。因此,当在application对象中存储数据后,所有访问网站的用户都能对其存储的数据进行访问(所以在一个项目中application是可以被当前所有工程中的servlet调用的)
3.application对象的基类是:java.servlet.ServletContext
ServletContext application=this.getServletContext();创建一个application对象
简单的聊天室功能:
使用作用域,可以实现一个聊天室的功能:
一般使用框架把页面分为三个部分:
left.jsp:用户列表界面
send.jsp:信息发送页面
content.jsp:聊天记录
session的作用域:(存放用户自己的信息)
application的作用域:(存放全局需要的信息)
用户列表:需要List集合(需要放到application中)
页面自动刷新:
页面1秒刷新一次
一: