一、创建LastAccessServlet

该类主要用于实现获取Cookie信息并将当前时间作为Cookie值发送给客户端。

public class LastAccessServlet extends HttpServlet {private static final long serialVersionUID = 1L;public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 指定服务器输出内容的编码方式UTF-8,防止发生乱码response.setContentType("text/html;charset=utf-8");String lastAccessTime = null;// 获取所有的cookie,并将这些cookie存放在数组中Cookie[] cookies = request.getCookies();// 遍历cookies数组for (int i = 0; cookies != null && i < cookies.length; i++) {if ("lastAccess".equals(cookies[i].getName())) {// 如果cookie的名称为lastAccess,则获取该cookie的值lastAccessTime = cookies[i].getValue();break;}}// 判断是否存在名称为lastAccess的cookieif (lastAccessTime == null) {response.getWriter().print("您是首次访问本站!!!");} else {response.getWriter().print("您上次的访问时间是: " + lastAccessTime);}// 创建cookie,将当前时间作为cookie的值发送给客户端String currentTime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());Cookie cookie = new Cookie("lastAccess", currentTime);// cookie.setMaxAge(60*60); //设置cookie最大存在时间// 发送 cookieresponse.addCookie(cookie);}public void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {this.doPost(req, resp);}
}

二、运行并访问

http://localhost:8080/chapter05/LastAccessServlet

第一次访问时

但服务器端报错了

java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value

cookie值中出现非法字符,这个字符是空格,cookie值就是时间字符串。

简单解决办法是把空格换成"-"。

String currentTime = new SimpleDateFormat("yyyy-MM-dd-hh:mm:ss").format(new Date());

再次访问,就能在浏览器中获取到cookie

再访问一次就能拿到上次访问时间

当关闭浏览器后再次访问,又是首次访问,原因是默认情况下,cookie对象的Max-Age=-1,即浏览器关闭,就删除cookie对象。可以通过设置cookie有效时间来解决。

cookie.setMaxAge(60*60); //设置cookie最大存在时间

显示用户上次访问时间相关推荐

  1. php 上次登陆时间,php使用cookie显示用户上次访问网站日期的方法

    本文实例讲述了php使用cookie显示用户上次访问网站日期的方法.分享给大家供大家参考.具体实现方法如下:<?php if(!empty($_COOKIE['lastvisit'])){//先 ...

  2. Cookie实例:显示用户上次访问的时间

    1. 效果 用户第一次访问HistServlet的时候,页面显示你是首次访问本网站,当前时间为:xxx.第n次访问:欢迎回来, 你上次访问的时间为xxx,当前时间为xxx. 2. 分析 要保证第二次访 ...

  3. Cookie (设置与读取、超时设置、指定路径、显示用户上次登录时间)

    Cooike简介 Cookie 是在 HTTP 协议下,服务器或脚本可以维护客户工作站上信息的一种方式.Cookie 是由 Web 服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的 ...

  4. Cookie记录用户上次访问时间

    目录 一.记录上一次用户访问时间 1.1 需求 1.2 分析 1.3 代码实现 1.4 实现效果图 1.5 总结 一.记录上一次用户访问时间 1.1 需求 (1)访问一个Servlet,如果是第一次访 ...

  5. 记录用户上次访问时间

    记录用户上次访问服务器的时间 需求:用户第一次访问,显示欢迎,这是您第一次访问,用户后续访问该页面,显示欢迎回来,您的上次访问时间为xxx年xx月xx日 hh:mm:ss 分析: 使用cookie来保 ...

  6. servlet session 跟踪用户上次访问时间

    1.是什么? 上次访问时间:即用户最近一次登录时间: 2.为什么? 为了提示用户登录或访问记录,提高安全性,如qq登录提示: 3.怎么做? 通过cookie 实现: 用户第1次登录, 服务器把访问时间 ...

  7. 使用cookie获取用户上次访问时间

    访问路径:http://localhost:8080/day18/cookieTest cookie可以用于不用登录的用户信息存储 大小为4k,每个域名下最多存20个 同一服务器下不同项目模块的coo ...

  8. Servlet案例6:显示用户的上次访问时间

    这里是cookie的简单应用 告诉用户您的上次访问时间是:xxxx-xx-xx xx:xx:xx 思路: 第一次访问该网站时候,记录当前访问时间(new Date()) 把当前时间以cookie的形式 ...

  9. Cookie案例-显示用户的上次访问时间代码实现

    1 案例分析 2 Java实现代码 1 public class LastAccessTimeServlet extends HttpServlet { 2 protected void doGet( ...

最新文章

  1. TP-link 841N 刷DD-WRT固件
  2. boost::copy_backward相关的测试程序
  3. wojilu系统的ORM介绍
  4. 如何让Filddler抓包时忽略某些主机名
  5. Linux sed命令实例详解
  6. MATLAB中如何删除坐标上已画出的内容
  7. javascript 的位操作符转换推断
  8. C语言:计算器程序。用户输入运算数和四则运算符,输出计算结果
  9. spss因子分析结果解读_SPSS统计结果P=0.000,我该如何解读呢?
  10. 码农小汪-synchronized
  11. -XX:SoftRefLRUPolicyMSPerMB参数了解
  12. 南京润和,哎,感概!
  13. JPG插入GPS信息
  14. python3d_Power BI将超越python和D3,成为数据可视化的福音、定性数据分析的未来?...
  15. 全书重点总结 |《Java并发编程的艺术》| 持续更新
  16. havc是什么意思_hvac是什么意思
  17. 爱情,你究竟是什么模样?
  18. Delphi XE下获取网页源码记录
  19. 基于遥感解译与GIS技术环境影响评价图件制作
  20. 全媒体运营师胡耀文教你:2021年企业微信私域增长手册

热门文章

  1. 我的内核学习笔记3:我的platform驱动模板文件
  2. 安卓增删改查用sql语句号码_详解Android中一些SQLite的增删改查操作
  3. 【算法】八大排序算法的时间复杂度 表格
  4. 【Spring】actual transaction available for current thread - cannot reliably process ‘remove‘ call
  5. 95-25-010-命令-topic 创建过程
  6. 12-Java读写CSV格式文件(opencsv)
  7. Starting VNC server: 1:root vncserver: geometry 800X600 is invalid
  8. cookie和session的应用场景
  9. 汇编语言转为c语言,如何把汇编语言转换成C语言
  10. 腾讯二面:@Bean 与 @Component 用在同一个类上,会怎么样?