(1)前端页面发送username和password到服务器的login接口时,针对每个用户的浏览器生成一个session对象,每个session对象有一个Jsessionid,login判断用户名和密码正确后,往该用户浏览器的session中添加多个key/value值,在数据库中为每个session对象生成一条记录,并且将Jsessionid置于cookie中返回给前端(默认自动进行)
(2)前端接收返回的结果自动保存Jsessionid在cookie中
(3)前端浏览器发起请求时,请求里自动带上了cookie的数据包括Jsessionid
(4)服务器端接收请求,通过Jsessionid找到对应的session对象,通过不同的session对象为不同的用户服务,判断用户是否登录,若username存在,则为已登录过的用户,用户名已知,不存在则为未登录用户,服务器自动读取cookie中的sessionid,找到对应的session,若不存在session-id,则未登录没有session对象,再根据session对象找到对于的key即username,再获取该值,如果存在则已登陆过,否则未登陆)
(5)退出登陆时,根据cookie中的sessionid找到对应的session对象,删除当前用户的session中的数据即可。