打开一个游览器访问某个站点,然后关闭游览器这就叫一次会话。

会话技术有2种,cookie和session

cookie:是把数据储存到客户端,安全性能不好(如果在网吧登录网页保留了cookie,下个使用者可能会盗取你的cookie),可以手动清除数据

session:数据存储到服务器中,对硬件要求较高,安全性能好

cookie的创建

1 //1.创建Cookie对象
2         //Cookie cookie = new Cookie("goods","huashengmi");
3         //设置cokie持久化时间
4         //cookie.setMaxAge(2*60);
5         //设置cookie的携带路径
6         //cookie.setPath("Web0707/com.oracle.demo01/SendCookieServlet");
7     //    cookie.setPath("/Web0707"); //访问web0707下的任何资源都携带
8         //发送cookie
9         //response.addCookie(cookie);

如果设置了cookie的持久化时间,想更改,可以创建一个同名的cookie,相同路径,然后设置0秒覆盖即可

1     //删除设置的cookie持久化时间
2         Cookie cookie = new Cookie("goods","huashengmi");
3         cookie.setPath("/Web0707");
4         //设置时间为0
5         cookie.setMaxAge(0);
6         response.addCookie(cookie);

接收客户端发送来的cookie

 1 //接收客户端发送的cookie
 2         //用cookie数组接收键值对
 3         Cookie[] cookies = request.getCookies();
 4         //先判断下这个cookie数组是不是空的,如果是空的直接没有,增加健壮性
 5         if(cookies!=null){
 6             for(Cookie c:cookies){
 7                 //获取键
 8                 String name = c.getName();
 9                 //如果cookie的键是我要获取的键,就获取值
10                 if(name.equals(name)){
11                     String value = c.getValue();
12                     response.getWriter().write(value);
13                 }
14             }
15
16         }

获取登录时间

 1 //获取时间,转换格式
 2     response.setContentType("text/html;charset=utf-8");
 3     Date date = new Date();
 4     SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd HH:mm:ss");
 5     String sj = sdf.format(date);
 6     //发送cookie
 7     Cookie cookie = new Cookie("time",sj);
 8     cookie.setMaxAge(60);
 9     response.addCookie(cookie);
10     //再获取客户端发的cookie,返回时间
11     String xianzai=null;
12     Cookie[] cookies = request.getCookies();
13     if(cookies!=null){
14     for(Cookie c:cookies){
15         String name = c.getName();
16         if(name.equals("time")){
17             xianzai = c.getValue();
18             response.getWriter().write("上次登录时间:"+xianzai);
19         }
20     }
21     }
22     //如果没有cookie,时间是空的,就可以判断是第一次登录
23     if(xianzai==null){
24         response.getWriter().write("第一次访问");
25     }
26 }

转载于:https://www.cnblogs.com/wangrongchen/p/9276956.html

java cookie学习相关推荐

  1. Java EE学习心得

    –Java EE学习心得   1.    称为编程专家的秘诀是: 思考-----编程--------思考------编程--.. 编程不能一步到位,不能一上来就编,必须先思考如何写,怎样写?然后再编程 ...

  2. 初级java开发学习路线_成为初级全栈Web开发人员的10分钟路线图

    初级java开发学习路线 So you have started your journey into the world of web development. But what do you lea ...

  3. Cookie 学习案例之三天免登录

    Cookie 问题:HTTP 协议是没有记忆功能的,一次请求结束后,相关数据会被销毁.如果第二次的请求需要使用相同的请求数据怎么办呢?难道是让用户再次请求书写吗? 解决:使用 Cookie 技术 解释 ...

  4. java jsp学习指南_JSP教程–最终指南

    java jsp学习指南 编者注: JavaServer Pages(JSP)技术使您可以轻松创建同时包含静态和动态组件的Web内容. JSP技术提供了Java Servlet技术的所有动态功能,但提 ...

  5. 学习Java的学习顺序

    学习Java的学习顺序 第一阶段(四个月) 1.j2se 面向对象-封装.继承.多态 内存的分析 递归 集合类(Set,List,Map的子类).泛型.自动打包与解包.Annotation IO流(I ...

  6. java初学者学习顺序--流程

    java初学者学习顺序–流程 一个哥哥的总结,拿来借鉴,若侵权及联系我删除 H5+css3:这个阶段是必须要度过的,这个阶段可以快速的培养起来你的编程兴趣,因为它见效快,一天就可以学到好多东西并且做出 ...

  7. Java学习路线导航,带你入门到精通(附Java全套学习资源)

    最近也有很多小伙伴来向我请教,他们大多是一些Java刚入门的新手,还不了解Java这个行业,也不知道Java零基础该从何学起,开始的时候非常迷茫,所以今天写了这篇文章,具体来说说Java的学习路线. ...

  8. 【大学四年自学Java的学习路线】写了一个月,这是一份最适合普通大众、非科班的路线,祝你零基础快速找到一份满意的工作

    零基础自学 Java,大概多久可以找到工作? 最近又有一个读者"在你的世界各地"向我提了上面这个问题.但说实话,这个问题并不太好问答.因为 Java 是一门"历史悠久&q ...

  9. java体系学习总结记录——超长篇

    Java体系学习 一.主流语言介绍 1.c语言:底层编程,比如嵌入式.病毒开发等应用,可以替代汇编语言来开发系统程序:高层应用可以开发从操作系统到各种应用软件.是一种面向过程的语言. 2.java:广 ...

最新文章

  1. 比Momentum更快:揭开Nesterov Accelerated Gradient的真面目NAG 梯度下降
  2. python表格控件_python GUI库图形界面开发之PyQt5表格控件QTableView详细使用方法与实例...
  3. 在Java中将Double转换为Integer
  4. keta-custom DWZ validationEng IE 下表单重复提交BUG原因及修复方法
  5. python知识:@classmethod和@staticmethod的异同
  6. phpAdmin数据库管理套件
  7. 双口RAM和多模块存储器
  8. 单节点配置SecondaryNameNode
  9. java 并发queue_深入浅出 Java Concurrency (19): 并发容器 part 4 并发队列与Queue简介
  10. Confluence 6 重新获得附件指南
  11. vmware安装笔记
  12. 开发人员系统功能设计常用办公软件分享
  13. 读 John Tosh 之《史学导论:现代历史学的目标、方法和新方向》
  14. eos 测试网搭建,单节点,并使用命令行完成系统合约部署、账户创建、资产转账
  15. 【冬察冬见】FFmpeg系列学习笔记
  16. 树状数组 之 poj 3067
  17. 2范数和F范数的区别
  18. CAN光端机在西门子FC18/720消防主机海上风电厂之星型联网方式
  19. 中山大学计算机学院考研拟录取名单,中山大学2020考研拟录取名单汇总_中大20考研复试结果及拟录取情况_聚创中大考研...
  20. 【数值预测案例】(6) LSTM、GRU 时间序列股票数据预测,附TensorFlow完整代码

热门文章

  1. weblogic管理3 - 生产模式下免密码管理配置
  2. 关于spring MVC机制,示例解读
  3. odoo 财务会计相关介绍
  4. [转]模拟芯片设计的四重境界
  5. 微软1月补丁星期二值得关注的蠕虫及其它
  6. 0day影响 Chrome和 Safari,谷歌不修复
  7. 黑客利用未修复的 Atlassian 服务器攻击电信运营商和 ISP
  8. Pyqt5_Python运用过程中一些问题和技巧
  9. [数位DP]JZOJ 3363 Number
  10. 控制拷贝和资源管理、类指针例子