1服务器可以同时处理多个用户请求,而且,每个用户请求的东西都不一样,这个时候就要用到会话跟踪技术.
2HttpServletRequest的getSession() 方法用语创建会话对象,具体的语法如下:
Apublic HttpSession getSession(); 如果没有与当前请求关联的会话,则 getSession() 方法用于创建会话。
Bpublic HttpSession getSession(boolean value);
如果布尔值为 true 且当前没有与请求关联的会话,则使用 getSession(boolean value) 创建会话。如果布尔值为 false,如果没有与当前请求关联的会话,返回null。
3会话跟踪技术
用户授权 :会话跟踪的用户授权方法在用户登录之后跟踪用户。用户授权技术不允许未经授权的用户访问网站上的某些资源
隐藏表单域 : 将会话跟踪字段的隐藏表单域添加到 HTML 页面,但是不会显示在客户端浏览器中
URL 重写 :URL(统一资源定位) 重写技术将一个唯一的会话 ID 添加到 URL 结尾,以标识该会话。例如,重写以下 URL 传递会话 ID10
Cookie : Cookie 用于存储 Web 服务器发送给客户端的信息。服务器通过设置响应标题中的 Set-Cookie 方法来发送 cookie。其语法如下:
Set-Cookie: Name=VALUE; Comment=COMMENT; Domain=DOMAINNAME;
Max-age=SECONDS; Path=PATH; secure;
Name – 指定 Cookie 的名称
VALUE – 指定 Cookie 名称的值
Domain – 指定 Cookie 有效的 URL
Max-age – 指定 Cookie 的生命周期(以秒表示)
secure – HTTP 指定 Cookie 是否可以在 HTTP 上交换
javax.servlet.http.cookies 包提供由 Cookie 类实现的多种方法
public void setMaxAge(int age);设置 cookie 的最大生命周期(以秒表示)
public int getMaxAge(); 返回Cookie 的最大保存时间
4Servlet 通信方法
Servlet 访问网络资源以满足客户端请求
Servlet 使用 RequestDispatcher 接口的 forward() 和include() 方法访问网络资源
public void forward (ServletRequest req, ServletResponse res); 将请求从一个 Servlet 转送到同一个服务器上的另一个 Servlet
public void include (ServletRequest req, ServletResponse res);在一个 Servlet 中包含另一个 Servlet 的内容
5 RequestDispatcher 写道
6Servlet 上下文
将所有 Servlet 所共有的属性和资源存储于 ServletContext 接口对象。处理上下文属性的方法为:
1public Object getAttribute(String name); 返回 Servlet 容器属性名称。如果该名称没有属性则返回 null
2public void setAttribute(String name, Object object);将对象绑定到 Servlet 上下文中给定的属性名称
3public void removeAttribute(String name);删除给定名称的属性