失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 使用cookie获取用户上次访问时间

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

时间:2023-10-01 22:26:35

相关推荐

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

访问路径:http://localhost:8080/day18/cookieTest

cookie可以用于不用登录的用户信息存储大小为4k,每个域名下最多存20个同一服务器下不同项目模块的cookie可以设置共享不同服务器想相同一级域名的cookie也可以设置共享某些网站的搜素记录,并没有登录百度的个性化搜索设置,不需要登录用户,登录用户是从数据库取得值不识别空格[32],需要编码,解码

有:不是第一次访问 响应数据:欢迎回来,您上次访问时间为:6月10日11:50:20写回Cookie:lastTime=6月10日11:50:01 没有:是第一次访问 响应数据:您好,欢迎您首次访问写回Cookie:lastTime=6月10日11:50:01

package 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 .URLDecoder;import .URLEncoder;import java.text.SimpleDateFormat;import java.util.Date;@WebServlet("/cookieTest")public class CookieTest extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {doPost(request, response);}protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {response.setContentType("text/html;charset=utf-8");Cookie[] cookies = request.getCookies();boolean flag = false;//没有cookie的key是lastTimeif (cookies != null && cookies.length > 0) {for (Cookie cookie : cookies) {String name = cookie.getName();if ("lastTime".equals(name)) {flag = true;String value = cookie.getValue();System.out.println("解码前: " + value);//URL解码value = URLDecoder.decode(value, "utf-8");System.out.println("解码后:" + value);response.getWriter().write("<h1>欢迎回来,上次访问时间为:" + value + "</h1>");Date date = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String str_date = sdf.format(date);System.out.println("编码前: " + str_date);//URL编码str_date = URLEncoder.encode(str_date, "utf-8");System.out.println("编码后: " + str_date);cookie.setValue(str_date);cookie.setMaxAge(60 * 60 * 24 * 30);//响应数据response.addCookie(cookie);break;}}}if (cookies == null || cookies.length == 0 || flag == false) {Date date = new Date();SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 HH:mm:ss");String str_date = sdf.format(date);System.out.println("编码前1: " + str_date);//URL编码str_date = URLEncoder.encode(str_date, "utf-8");System.out.println("编码后1: " + str_date);Cookie cookie = new Cookie("lastTime", str_date);//存活一个月//cookie.setMaxAge(60 * 60 * 24 * 30);response.addCookie(cookie);response.getWriter().write("<h1>你好,欢迎首次访问</h1>");}}}

如果觉得《使用cookie获取用户上次访问时间》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。