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
    长期保存
    不重要信息
    保存大小有限

最新文章

  1. Odoo9是如何计算预定交付日期的
  2. 20145205《Java程序设计》课程总结
  3. Web.config配置文件详解
  4. **PHP中替换换行符
  5. WebForm和WinForm取当前根目录的通用的方法[转载]
  6. C++语法 初始化列表 数组引用
  7. HTML里的id等属性命名需要注意
  8. Eclipse插件安装与使用 —— Properties Editor
  9. What is the difference between DAO and DAL?
  10. 使用PHP导出Word文档的原理和实例
  11. hdu 4707 Pet 2013年ICPC热身赛A题 dfs水题
  12. select下拉菜单反显不可改动,且submit能够提交数据
  13. Reading Code Is Hard
  14. plink合并文件并更新SNP位置(merge file, update SNP position)
  15. oracle监控
  16. ps高级磨皮的7个步骤
  17. 使用AJAX实现文件上传时Illegal invocation错误
  18. 阿里八八Alpha阶段Scrum(11/12)
  19. ArcGIS API for Silverlight——小滑块
  20. Linux查看系统当前字符集

热门文章

  1. Scala语法01 - 基础语法
  2. 一个简单的C共享库的创建及Python调用此库的方法
  3. mysql 松散索引与紧凑索引扫描(引入数据结构)
  4. mysql innodb阻塞分析
  5. curl配置host
  6. docker部署jar、war包方法
  7. Data Exfiltration with DNS in MSSQL SQLi attacks
  8. 实例一 airflow_failover
  9. 详解mysql复制机制--异步复制,半同步复制和并行复制
  10. Linux系列(7):入门之磁盘与文件系统管理