我们都知道Session是可以持久化在服务器中保存的,而且默认时间是30分钟,这个是可以在conf/web.xml文件夹下可以修改的,并且Session只有在服务器关闭的时候,或者使用 invalidate()的时候才会消失。
Session的作用
1. session用于存储一次会话的多次请求的数据,存在服务器端
2. session可以存储任意类型,任意大小的数据
而Cookie是存储在客户端的,一旦客户端关闭,那么Cookie储存的数据也会随之关闭。
Cookie作用:
1. cookie一般用于存出少量的不太敏感的数据
2. 在不登录的情况下,完成服务器对客户端的身份识别
那么问题来了,为什么浏览器关闭后,我们再打开的时候,还是需要登陆操作呢,Session不是已经储存了我们的用户名和密码嘛。
在我询问了一个程序员朋友后,他告诉我,Session是储存在了服务器中,而Session的实现是依赖于Cookie的,当我们关闭了浏览器,Session中的Cookie也会销毁,当我们再次打开浏览器时,之前存在Cookie中的Session也就不存在了,那么Session中的数据哪里去了呢,答案是:还在服务器中,只是获取不到了而已,当Session的默认时间到了,存在服务器中的Session就会自动销毁。
至于怎么实现像TX视频,YK视频网页版的那种账号密码,可以自动登陆一段时间,我还需要继续学习,然后再和大家分享。