记录用户上次访问时间
记录用户上次访问服务器的时间
需求:用户第一次访问,显示欢迎,这是您第一次访问,用户后续访问该页面,显示欢迎回来,您的上次访问时间为xxx年xx月xx日 hh:mm:ss
分析: 使用cookie来保存该访问时间
- 创建servlet,要知道用户是否第一次访问 判断是否有个名为lastVisit的cookie
- 每次访问该servlet都要存储lastVisit的cookie,值为当前访问时间
代码实现如下:
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.text.SimpleDateFormat;
import java.util.Date;@WebServlet("/userTime")
public class UserTime extends HttpServlet {@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doGet(request, response);}@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {// 解决乱码(get请求不用解决乱码问题)request.setCharacterEncoding("utf-8");response.setContentType("text/html;charset=utf-8");// 获取页面传回的数据String username = request.getParameter("username");String password = request.getParameter("password");// 判断if ("张三".equals(username) && "123456".equals(password)) { //登录成功// 默认第一次登录boolean isFirst = true;// 第一次登录的上一次访问时间为空String decode = null;// 获取cookieCookie[] cookies = request.getCookies();if (cookies != null) { // 防止空指针引用for (Cookie cookie1 : cookies) { // 遍历查找// 获取每一个cookie的名String name = cookie1.getName();// 判断是否第一次登录if ("lastVisit".equals(name)) { //有上一次访问的记录,则不是第一次登录isFirst = false;// 获取上一次访问的时间String value = cookie1.getValue();// 将获取到的时间解码decode = URLDecoder.decode(value, "utf-8");}}}// 写入页面if (isFirst) response.getWriter().write("欢迎,这是您第一次登录");else response.getWriter().write("欢迎回来,您上次访问的时间是" + decode);/*无论是第几次登录都将当前的时间存入cookie*/// 获取当前时间SimpleDateFormat formatter = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");Date date = new Date(System.currentTimeMillis());String visitTime = formatter.format(date);// 将时间存入cookieString encode = URLEncoder.encode(visitTime, "utf-8");Cookie cookie = new Cookie("lastVisit", encode);response.addCookie(cookie);} else { // 登录失败// 设置域对象(名:值)request.setAttribute("msg", "用户名或者密码错误");// 回到登录的页面request.getRequestDispatcher("login.jsp").forward(request, response);}}
}
记录用户上次访问时间相关推荐
- Cookie记录用户上次访问时间
目录 一.记录上一次用户访问时间 1.1 需求 1.2 分析 1.3 代码实现 1.4 实现效果图 1.5 总结 一.记录上一次用户访问时间 1.1 需求 (1)访问一个Servlet,如果是第一次访 ...
- 简单的Cooki案例——记录用户上次访问该网页的时间
功能: 帮助网站实现提示客户端计算机上次访问网站的时间 实现原理: 将每一个会话作为一次访问过程,将每次会话的开始时间作为每次访问网站的时间,然后将这个时间以Cookie的形式存储到客户端的计算机中, ...
- servlet session 跟踪用户上次访问时间
1.是什么? 上次访问时间:即用户最近一次登录时间: 2.为什么? 为了提示用户登录或访问记录,提高安全性,如qq登录提示: 3.怎么做? 通过cookie 实现: 用户第1次登录, 服务器把访问时间 ...
- 使用cookie获取用户上次访问时间
访问路径:http://localhost:8080/day18/cookieTest cookie可以用于不用登录的用户信息存储 大小为4k,每个域名下最多存20个 同一服务器下不同项目模块的coo ...
- 显示用户上次访问时间
一.创建LastAccessServlet 该类主要用于实现获取Cookie信息并将当前时间作为Cookie值发送给客户端. public class LastAccessServlet extend ...
- Cookie实例:显示用户上次访问的时间
1. 效果 用户第一次访问HistServlet的时候,页面显示你是首次访问本网站,当前时间为:xxx.第n次访问:欢迎回来, 你上次访问的时间为xxx,当前时间为xxx. 2. 分析 要保证第二次访 ...
- php 上次登陆时间,php使用cookie显示用户上次访问网站日期的方法
本文实例讲述了php使用cookie显示用户上次访问网站日期的方法.分享给大家供大家参考.具体实现方法如下:<?php if(!empty($_COOKIE['lastvisit'])){//先 ...
- Servlet案例6:显示用户的上次访问时间
这里是cookie的简单应用 告诉用户您的上次访问时间是:xxxx-xx-xx xx:xx:xx 思路: 第一次访问该网站时候,记录当前访问时间(new Date()) 把当前时间以cookie的形式 ...
- JavaScript Cookie记录用户上次登陆的时间
目录 目录 前言 一.Cookie是什么? 二.需求分析 需求: 思路: 三.如何判断什么情况下是第一次访问,什么情况下是第n次访问? 四.代码如下 1.创建登录页面 2.登录成功判断是否为第一次访问 ...
最新文章
- java异常_Java的异常体系
- 配置HDFS HttpFS和WebHDFS
- 我的团队[六]———功夫在诗外
- wxWidgets:wxDir类用法
- eclipse上安装hadoop后报错 Error:org.hadoop.security.AccessControlException:Permission
- 初识MASA Blazor
- sqlserver复习总结
- yum安装ruby_centos 6.5 ruby环境安装
- python go rpc_Go实现简易RPC框架的方法步骤
- congatec AG acquires Real-Time Systems GmbH
- Animate.css动画库下载、安装、使用与解析
- Crystal Reports基础知识
- android机顶盒root,[Android]机顶盒root脚本:SupersuSU获取完美Root权限万能方法,解决二进制更新问题 | 樱花庄...
- UE4添加人物动画之状态机
- java 类型通配符_通配符类型
- 如何使用MyBatis-Plus中的代码生成器?
- 花生壳配置域名以及公网ip
- http和https的区别
- Typora配置smms图床
- 《魂斗罗:归来》子弹中没中,没你想得那么简单!