cookieDemo Servlet
package demo;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class CookieDemo extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//设置编码
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
//获得当前时间
//在发送cookie时Tomcat8.5是不允许使用空格的所以日期和时间中用_分割
Date date = new Date();
SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd_hh:mm:ss");
String currentTime = sf.format(date);
//获得用户名与密码
String username = request.getParameter("username");
String password = request.getParameter("password");
System.out.println(username);
System.out.println(password);
//验证用户名与密码假设用户存在密码正确
if("1234".equals(password)){
System.out.println("登录成功。");
}else {
System.out.println("登陆失败");
}
Cookie coo = new Cookie("lastAccessTime", currentTime);
//设置cookie保留10分钟
coo.setMaxAge(60*10);
//传递cookie到浏览器
response.addCookie(coo);
//从请求总获得cookie
Cookie[] cookies = request.getCookies();
String lastAccessTime = null;
//遍历赋值lastAccessTime
for (Cookie cookie : cookies) {
if("lastAccessTime".equals(cookie.getName())) {
lastAccessTime = cookie.getValue();
}
}
//判断是否室第一次访问
if(lastAccessTime != null) {
response.getWriter().println(username + "上次登录时间:"+ lastAccessTime);
}else {
response.getWriter().println(username + "是第一次登录");
}
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
登录页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="/Cookie_Session/cookie" method="post">
用户名:
<input type="text" name="username" ><br>
密码:
<input type="password" name="password" ><br>
<input type="submit" value="登录">
</form>
</body>
</html>