HTTP协议:一次请求一次响应,响应完断开连接
状态管理:将浏览器与服务器交互过程中所涉及到的数据即状态保存下来。状态:数据,管理:交互时对数据进行修改。(Cookie,Session)
Cookie:浏览器向Web服务器发送请求时,服务器将少量的数据以set-Cookie消息头的方式发送给浏览器,浏览器将这些数据保存下来。浏览器再次访问服务器时,会将这些数据以Cookie消息头的方式发送给服务器。
创建Cookie:
Cookie c = new Cookie(String name, String value) response.addCookie(c)
客户端获取Cookie:Cookie[] request.getCookied() Cookie.getName() Cookie.getValue()
修改Cookie:request得到所有Cookie,根据name找到Cookie,setValue()实现修改,response.addCookie()
生存时间:Cookie保存在内存中,浏览器不关闭,就会一直存在。void Cookie setMaxAge(int seconds)设置生存时间。
Cookie只能保存ASCII字符,如果想保存中文,需要进行编码:Cookie c = new Cookie("name",URLEncoder.encode(“哈哈”,"utf-8"));解码:value=URLDecoder.decode(value,"utf-8")
Cookie路径:c.setPath(“”)
缺点:可以被用户禁止,保存在浏览器端不安全,少量,只能保存字符串。