http协议无状态性

当提交请求,服务器返回响应。但当同一用户同一浏览器再次提交请求,服务器并不知道与刚才的请求是同一用户浏览器发起。

保存用户状态的两大机制

Session-保存在服务器端
Cookie-保存在客户端

Cookie

保存在用户端的文本信息。
使用场景:
1、判断用户是否已登录,n天内保存登录状态。
2、“购物车”处理。
3、保存浏览记录。

缺点:容易泄露用户信息。

创建与使用

Cookie c = new Cookie(String key,Object value); //创建
response.addCookie(c); //存储在客户端
Cookie[] cs = request.getCookies(); //从请求中获取

常用方法:
setMaxAge(int n) 设置有效期,单位s
setValue(String name) 设置cookie的值(创建后)
getName() 获取名称
getValue() 获取值
getMaxAge() 获取有效期

  • 附:编码和解码(解决中文乱码问题)
    URLEncoder.encode(value,"utf-8"); //编码
    URLDecoder.decode(value,"utf-8"); //解码

Cookie与Session对比

  • Session:
    服务器端
    保存的是Object
    随会话结束而销毁
    保存重要信息
  • Cookie:
    客户端
    保存的是String
    长期保存
    不重要信息
    保存大小有限

JavaWeb【七、JSP状态管理】的更多相关文章

  1. jsp状态管理

    http无状态协议 服务器记不住你 每次浏览器访问,服务器不会特点保存相应信息,故记不住你 jsp状态存储的两种机制 cookie 存储在客户端 用途: 1.简化登陆 2.追踪特定对象 3.保存用户常 ...

  2. JSP 状态管理 -- Session 和 Cookie

    Http 协议的无状态性 无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求.但是同一个浏览器再次发送请求给服务器的时候,服务器并不知道它就是刚才那个浏览器 session sessio ...

  3. Java遇见HTML——JSP篇之JSP状态管理

    一.http协议的无状态 无状态性是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求.但是当同一个浏览器再次发送请求给服务器的时候,服务器并不知道他就是刚才的那个浏览器.简单的说,就是服务器不 ...

  4. JSP状态管理 及 Cookie实例

    HTTP协议的无状态性 无状态是指,当浏览器发送请求给服务器的时候,服务器响应客户端的请求. 但是当同一个浏览器再次发送请求给了服务器的时候,服务器并不知道它就是刚才那个浏览器. 简单地说,就是服务器 ...

  5. IT兄弟连 JavaWeb教程 Servlet 状态管理 会话跟踪

    HTTP协议是无状态的,我们的客户端与服务器的每一次请求与响应,我们服务器都没有记忆能力将客户端与服务器的多次交互数据进行存储与管理共有两种技术实现: ●  基于客户端实现:Cookie,将状态保存在 ...

  6. JSP状态管理_1_Cookie

    http协议的无状态性:当浏览器发送请求飞服务器时,服务器相应客户端请求:但当同一个浏览器再次发送请求给浏览器时,服务器并不知道它就是刚才那个客户端. 保存用户状态的两大机制:Session,Cook ...

  7. JAVA遇见HTML——JSP篇(JSP状态管理)

    案例:Cookie在登录中的应用 URL编码与解码的工具类解决中文乱码的问题,这个工具类在java.net.*包里 编码:URLEncoder.encode(String s,String enc)/ ...

  8. JSP | 基础 | JSP状态管理 | Cookie

    Cookie : 是web服务器保存在客户端的一系列文本信息. Cookie的作用: 1.对特定的对象的追踪 2. 3. JSP中创建Cookie以及使用 创建Cookie对象 写入Cookie对象 ...

  9. JavaWeb中Cookie会话管理,理解Http无状态处理机制

    注:图片如果损坏,点击文章链接:https://www.toutiao.com/i6512995108961387015/ 1.<Servlet简单实现开发部署过程> 2.<Serv ...

随机推荐

  1. 为什么HashMap继承了AbstractMap还要实现Map?

    前言 之前看源码一直忽略了这个现象,按理说HashMap的父类AbstractMap已经实现了Map,它为什么还要实现一次呢?遂上网查了一下,背后原因让人大跌眼镜. 原因 这是类库设计者的拼写错误,其 ...

  2. 操作 SQL语句之数据操作语言(DML)详解

    一.插入数据(INSERT) MariaDB [(none)]> help insertName: 'INSERT'Description:Syntax:INSERT [LOW_PRIORITY ...

  3. 用mongodump以及mongorestore来完成mongo的迁移任务

    首先粘贴官网说明: 详细请见:https://docs.mongodb.com/manual/ 在实际操作中,一般只需用到 mongodump -h ip:port -d dbName -o path ...

  4. Oracle面试题

    0.绑定变量的优缺点及使用场合分别是什么? 优点:能够避免SQL的硬解析以及与之相关的额外开销(SQL语法.语义的分析.逻辑分析.生成较佳的执行计划等开销),提高执行效率. 缺点:如果在表存在数据倾斜 ...

  5. 如何写resultful接口

    一.协议 API与客户端用户的通信协议,总是使用HTTPS协议,以确保交互数据的传输安全. 二.域名 应该尽量将API部署在专用域名之下: https://api.example.com 如果确定AP ...

  6. jenkins密码忘记解决

    1.停止jenkins sh /usr/local/tomcat/bin/shutdown.sh 2.找到config.xml [root@test3 hello]# find / -name con ...

  7. AES加密解密 加密解密使用

    using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Sec ...

  8. TP5之事务处理

    事务: 执行完A事件然后执行B事件,AB事件都执行完才算完成.可是有时候由于某些因素,A事件执行完,还没来得及执行B事件.怎么办?就需要回到A事件执行前.这种事情多见于电商支付功能. mysql事务要 ...

  9. 通过js判断整型,浮点型,布尔型,字符串型

    <!DOCTYPE html> <html > <head>     <meta charset="UTF-8">     < ...

  10. ARM 版本 瀚高 数据库的启动命令

    1. 在瀚高安装目录下面执行路径 安装目录为: /opt/HighGoDB-4.3.4.3/ bin下./pg_ctl restart -D ../data 本次的密码是: highgo123   2 ...