快速学习-登录功能实现-登录成功跳转主页面

第8章 登录功能实现-登录成功跳转主页面

8.1 涉及的技术知识点

  1. Session会话 Cookie JSTL标签

8.2 Cookie

  1. HTTP是无状态协议,服务器不能记录浏览器的访问状态,也就是说服务器不能区分中两次请求是否由一个客户端发出。这样的设计严重阻碍的Web程序的设计。如:在我们进行网购时,买了一条裤子,又买了一个手机。由于http协议是无状态的,如果不通过其他手段,服务器是不能知道用户到底买了什么。而Cookie就是解决方案之一。

  2. Cookie实际上就是服务器保存在浏览器上的一段信息。浏览器有了Cookie之后,每次向服务器发送请求时都会同时将该信息发送给服务器,服务器收到请求后,就可以根据该信息处理请求。

  3. Cookie的用途
    网上商城购物车
    用户登录状态的保持

  4. Cookie的限制性
    ① Cookie作为请求或响应报文发送,无形中增加了网络流量。
    ② Cookie是明文传送的安全性差。
    ③ 各个浏览器对Cookie有限制,使用上有局限

  5. Cookie的具体使用
    ① 创建cookie
    在这里插入图片描述
    ② 读取cookie
    在这里插入图片描述

8.3 Session

  1. 使用Cookie有一个非常大的局限,就是如果Cookie很多,则无形的增加了客户端与服务端的数据传输量。而且由于浏览器对Cookie数量的限制,注定我们不能再Cookie中保存过多的信息,于是Session出现。
  2. Session的作用就是在服务器端保存一些用户的数据,然后传递给用户一个名字为JSESSIONID的Cookie,这个JESSIONID对应这个服务器中的一个Session对象,通过它就可以获取到保存用户信息的Session。
  3. Session的工作原理
    ① Session的创建时机是在request.getSession()方法第一次被调用时。
    ② Session被创建后,同时还会有一个名为JSESSIONID的Cookie被创建。
    ③ 这个Cookie的默认时效就是当前会话。
    ④ 简单来说,Session机制也是依赖于Cookie来实现的
  4. Session的具体使用

在这里插入图片描述
5) Session的时效问题
Session默认有效时间为30分钟,可以在服务器的web.xml配置中修改.
在这里插入图片描述

8.4 URL重写

  1. 整个会话控制技术体系中,保持JSESSIONID的值主要通过Cookie实现。但Cookie在浏览器端可能会被禁用,所以我们还需要一些备用的技术手段,例如:URL重写。
  2. URL重写其实就是将JSESSIONID的值以固定格式附着在URL地址后面,以实现保持JSESSIONID,进而保持会话状态。这个固定格式是:URL;jsessionid=xxxxxxxxx
  3. 实现方式
    在这里插入图片描述

8.5 具体功能展示

快速学习-登录功能实现-登录成功跳转主页面_第1张图片

你可能感兴趣的:(快速学习)