javaWeb SevletContext Session resquest 三大域

servlet:
是运行在服务器端的小程序,让原本静态的html 界面可以,进行数据交互。主要方法service(),方法,当服务请求时,创建。单例模式,服务器关闭时,销毁。

resquest:封装用户http请求的对象,服务器封装了请求参数,调用serlvet的service(),传递进来,可以通过该类获取请求数据。

respone:封装服务器http的响应对象,可以通过该类将数据设置到response对象中,发送费客户端。

三大域
resquest:每次请求,都创建一个
Session:每个客户端,都会创建一个,。
SevletContext:一个应用就创建一个,全局范围,共享数据。可以理解为全局常量。

数据存储
cookie:是运行在客户端的客户容器
cookie 默认什么周期是,打开 到 关闭浏览器。
可以设置 setMaxAge() 来设置有效时长,设置为 0 为立即失效
浏览器在保存cookie时,默认以访问网页的 url 作为key,每当你访问该路径时,就会去本地取,对应的cookie,然后设置到 http请求头中,发送给服务器,其中也包括(SessionId)

session: 是运行在服务器端的客户容器、
session,默认周期是request.getSession(),第一次访问时创建,如果30分钟内没人访问,默认被销毁。
Session 如何知道那个Session属于那个客户呢?原理基于Cookie,cookie保存了Session的id. request.getSession()时,如果没有就创建一个,并讲 sessionId 保存到response.addCookies(cookie) 中,发送给客户端浏览器,浏览器在此访问时对于 网站时,去查找cookie,发送给服务器,getSession(),默认回去 cookie 或者 URL 中去查找 jsessionid,找到了,就用id去查找session容器。

你可能感兴趣的:(javaWeb)