JavaWeb学习——回过头理一下servlet、request、session等之间的区别和联系

1.Http是一个“请求/响应”模型,简单说就是一问一答模型,这次请求的问题,下一次http已经不知道了,各次请求之间没有联系。
2.java web四大域对象:
  page:jsp,pageContext
  request:请求HttpServletContext
  session:会话HttpSession
  application:web
  他们都包括setAttribute()和getAttribute()方法,具体可百度。

3.request:请求,是指前端向服务器发送的一次请求,http的每次请求是没有联系的。
  request域的作用范围:一次请求中,包括发送请求和服务器接收并返回响应。因此当重定向之后request域对象里面的数据会消失,但是请求转发的话request的数据并不会消失。

4.session:会话,一个session表示一次会话,一次会话可以包括多个请求,只要会话没有结束即浏览器没有关闭或者session没有到期自动销毁,这期间的同一个用户的同一浏览器的多次请求都是在该次会话中的。
  注意:服务器正常关闭,再启动,Session对象会进行钝化和活化操作。同时如果服务器钝化的时间在session 默认销毁时间之内, 则活化后session还是存在的。否则Session不存在。如果JavaBean 数据在session钝化时,没有实现Serializable 则当Session活化时,会消失。
  session是保存在服务器端的文件,保存了用户的相关信息
  cookie是保存在浏览器本地的文件,保存了用户的相关信息和sessionId

5.ServletContext:作用于整个web应用,相当于一个全局变量。由于一个web应用中的所有Servlet共享同一个ServletContext对象:因此Servlet对象之间可以通过ServletContext来是实现通讯。

参考自:
https://blog.csdn.net/qq646040754/article/details/81204797
https://www.cnblogs.com/ssjifm/p/7402579.html
https://blog.csdn.net/qq_34149805/article/details/73734681
https://blog.csdn.net/linhao19891124/article/details/78749143

你可能感兴趣的:(web开发)