1.登陆需求
1.1需要创建LoginController类,实现登陆方法,
1.2登陆方法调用操作用户的Controller类,
1.3用户Controller类调用Mapper接口,编写sql语句,进行用户信息查询,判断用户是否存在,并返回,
2.会话技术
概述:在用户打开浏览器第一次访问服务器的时候,这个会话就建立了,直到有任何一方断开连接,此时会话就结束了。在一次会话当中,是可以包含多次请求和响应的。
会话跟踪:服务器需要判断多次请求是否来自于同一浏览器,,以便在同一次会话的多次请求间共享数据,
引入会话跟踪的原因:由于HTTP协议是无状态的,两次请求之间没有任何关系,
2.1 Cookie(客户端会话跟踪技术)
数据存储在客户端浏览器
原理:响应头 Set-Cookie :设置Cookie数据的 ,请求头 Cookie:携带Cookie数据的
执行方式:
-
服务器会自动的将 cookie 响应给浏览器。
-
浏览器接收到响应回来的数据之后,会自动的将 cookie 存储在浏览器本地。
-
在后续的请求当中,浏览器会自动的将 cookie 携带到服务器端。
优点:HTTP协议中支持的技术,
缺点:
- 移动端无法使用
- 不安全
- Cookie不能跨域
跨域:协议,IP/协议,端口,只要有任何一个维度不同,那就是跨域操作
2.2 Session(服务端会话跟踪技术)
数据存储在储在服务端,基于Cookie来实现的。
获取Session:浏览器在第一次请求服务器的时候,我们就可以直接在服务器当中来获取到会话对象Session。如果是第一次请求Session ,会话对象是不存在的,这个时候服务器会自动的创建一个会话对象Session 。而每一个会话对象Session ,它都有一个ID,我们称之为 Session 的ID
响应Session:借助于JSESSIONID这个cookie,传递会话对象Session 的 ID,
优点:Session是存储在服务端的,安全
缺点:
- 集群环境下无法直接使用Session
- Cookie的所以缺点
2.3 令牌技术
其实本质就是一个字符串,
特点:
- 存储:可以在任意地方,例如浏览器,三方缓存服务器
- 传输&#