1. Application
服务器启动后产生,所有用户共用一个Application,可以往里面存一些键值对
2. Session
会话对象,第一个JSP页面被装载时自动创建。从一个客户打开浏览器并连接到服务器开始,到客户关闭浏览器离开这个服务器结束,被称为一个会话。
会话可用于保存用户的登录状态,在页面之间传递值
Session的Id,由JSP引擎产生发送到客户端,
3. Request
封装了用户的请求,包含请求头,使用的协议,提交的参数,IP,客户机名称,以及服务器名称和端口(存疑,服务器要这何用)
4. Response
封装了服务器的响应,可以在filte中对其做一些修改,如修改编码以正确显示中文,默认编码是ISO-8859-1,需要服务器与前端共同配合才能正确显示出中文
5. Config
获取一些初始化配置信息,也是个键值对 getInitParamter
可通过getServletContext() 获得ServletContext,给出Servlet与服务器交互的信息
6. Page
代表了正在运行的由JSP文件产生的类对象
7. Out
一个输出流,向客户端输出数据,(有点像System.out)
8. PageContext
页面上下文,包含getRequest() getResponse()
9. Exception
异常对象,可以用来做ErrorPage,显示详细的堆栈信息
只能在使用了<%@ page isErrorPage="true" %>的JSP文件中使用
getLocalizedMessage() printStackTrace()
The last but the most important
Cookie
使网站能在用户的计算机上保存信息并读取信息。
通过为每个访问者在Cookie中增加一个唯一ID可以精确的识别和跟踪用户
在baidu搜索的物品会在baidu的广告中有所体现,哪怕没有登录baidu账号,应该就是用的Cookie
Cookie[] cookies = request.getCookies();
Cookie cookie = new Cookie("username" , "park"); cookie.setMaxAge(); //ms