戚权20201105
知识点:
cookie
Cookie是一小段文本信息,伴随着用户的请求,在Web服务器和客户端浏览器之间传递.浏览器端的会话技术,它通过在浏览器中记录一些服务器传递过来的数据,解决会话从什么时候开始,到什么时候结束。
public class Cookie implements Cloneable, Serializable
Cookie 的分类
- 会话级别的Cookie:默认的.关闭了浏览器Cookie就销毁了.
- 持久级别的Cookie:可以设置指定cookie在浏览器的存活时间 , Cookie就不会随着浏览器关闭而销毁了.
方法
void setMaxAge(int expiry) :设置cookie的最大生存时间(单位:秒),超过了该时间后Cookie会自动销毁,当时间为0的时候 , 意思为立即删除此Cookie
注意事项
在上面的案例中我们给cookie添加数据的时候需要注意数据的内容,在cookie值中不能直接使用分号(;)、逗号(,)、空格。
那么怎么样在cookie中使用这些非法字符呢?我们可以将以上字符转换成允许的形式存储就可以了,然后在读取时再转换回来(解码)就可以了。
Session
session的钝化和活化
钝化是指 session 还未过期,但服务器( tomcat )正常停止(如果因为异常等原因导致停止是不会执行的)。这时候服务器会将未失效的 session 保存到服务器的 work 目录下,生成一个文件SESSIONS.ser 。当服务器再次启动是会将这里面的 seesion 重新加载进来,这个过程就叫做活化。如果 session 在钝化过程中失效,也不会立即失效,而是在服务器再次启动是失效。
ServletContext
针对一个WEB应用。一个WEB应用只有一个 ServletContext 对象,使用该对象保存的数据在整个WEB应用中都有效。
- 创建:服务器启动的时候.
- 销毁:服务器关闭的时候或者项目移除的时候.
HttpSession
针对一次会话。使用该对象保存数据,一次会话(多次请求)内数据有效。
- 创建:可以暂且认为在服务器第一次调用 getSession() 的时候.服务器创建 session 的对象.因为session 销毁后,再次调用 getSession() 的时候也会创建.
- 销毁:
- 非正常关闭服务器
- Session过期了,默认时间是30分钟.
- 手动调用session的invalidate的方法
HttpServletRequest
针对一次请求。使用该对象保存数据,一次请求(一个页面,如果是请求转发多个页面)内数据有效
- 创建:客户端向服务器发送一次请求
- 销毁:服务器为这次请求作出响应之后,销毁request
总结
几天学习的新知识很少,但是我们做了一个登陆界面,结合了前段时间的知识
近期评论