java什么是会话技术
客户端与服务器通信过程中,会产生一些数据。比如,A和B分别登陆了某宝购物网站,A买了一个Android手机,B买了一个iPhone手机,当结账时,web服务器需要分别对用户A和B的信息分别保存。根据Java Web之Servlet技术中所说,HttpServletRequest对象和ServletContext对象都可以保存数据,但是这二者在该情形下是不适合使用的。
客户端的每次请求,服务器都会产生一个HttpServletRequest对象,该对象只保存本次请求所传递的数据。由于购买和结账是两个不同的请求,所以使用HttpServletRequest对象保存信息会造成丢失。
同一个Web应用共享一个ServletContext对象,所以当多个用户结账时无法区分哪个商品是哪个用户购买的,这显然是不可行的。
JAVA中的会话跟踪技术
page否是代表与一个页面相关的对象和属性。一个页面由一个编译好的 Java servlet 类(可以带有任何的 include 指令,但是没有 include 动作)表示。这既包括 servlet 又包括被编译成 servlet 的 JSP 页面
request是是代表与 Web 客户机发出的一个请求相关的对象和属性。一个请求可能跨越多个页面,涉及多个 Web 组件(由于 forward 指令和 include 动作的关系)
session是是代表与用于某个 Web 客户机的一个用户体验相关的对象和属性。一个 Web 会话可以也经常会跨越多个客户机请求
application是是代表与整个 Web 应用程序相关的对象和属性。这实质上是跨越整个 Web 应用程序,包括多个页面、请求和会话的一个全局作用域
cookie是一种会话技术,它用于将会话过程中的数据保存在用户的浏览器中,从而使浏览器和服务器更好的交互。服务器向客户端发送Cookie时,会在HTTP响应头字段增加Set-Cookie字段,该字段设置的Cookie遵循一定规则,比如以键值对形式保存,Cookie属性值可以有多个,但是这些属性之间必须以分号和空格分隔。