ServletContext对象
- 概念:代表整个web应用,可以和程序的容器(服务器)来通信
- 功能:
-
获取MIME类型:互联网通信过程中定义的一种文件数据类型
- 格式:大类型/小类型 text/html image/jpeg
- 获取:String getMimeType(String file)
-
域对象:共享数据
-
setAttribute(String name,Object value)
-
getAttribute(String name)
-
removeAttribute(String name)
- ServletContext对象范围:所有用户所有请求的数据
-
-
获取文件的真实(服务器)路径
- 方法:String getRealPath(String path)
-
- 获取
- 通过request对象获取:request.getServletContext();
- 通过HttpServlet获取:this.getServletContext();
会话技术:
会话概念:一次会话中包含多次请求和响应。
一次会话概念:浏览器第一次给服务器资源发送请求,会话建立,直到有一方断开为止。
会话功能:在一次会话的范围内的多次请求间,共享数据
共享方式:
- 客户端会话技术:Cookie
- 服务器端会话技术:Session
Cookie
概念:客户端会话技术,将数据保存到客户端。
快速入门:
-
使用步骤:
- 创建Cookie对象,绑定数据
- new Cookie(String name ,String value);
- 发送Cookie对象
- response.addCookie (Cookie cookie)
- 获取Cookie,拿到数据
- Cookie[] request.getCookies()
- 创建Cookie对象,绑定数据
-
Cookie的细节操作:
- 设置生命周期:setMaxAge():负数为默认值,即浏览器关闭就销毁,正数为持久化多少秒,零则删除Cookie信息。
- 设置获取范围。默认情况下,Cookie的获取范围为当前虚拟目录。:setPath():如果要共享,则可以讲Path设置为”/“
- 服务器间共享:setDomain(String path):如果设置一级域名相同,那么多个服务器之间的cookie可以共享。
-
Cookie的特点和作用
-
特点
- cookie存储在客户端浏览器,因此cookie的安全性较低
- 浏览器对于单个cookie的大小(4kb)有限制,以及对同一个域名下的总cookie数量也有限制(20个)
-
作用
- cookie一般用于存储少量的不太敏感的数据
- 在不登录的情况下,完成服务器对客户端身份的识别
-