一、servlet
package com.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.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.SimpleFormatter;
@WebServlet(name = "TimeServlet", urlPatterns = "/getTime")
public class TimeServlet extends HttpServlet {
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Date date = new Date();
//格式化日期
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd:hh:mm:ss");
String format = dateFormat.format(date);
//将格式化过的日期添加进cookie
Cookie cookie = new Cookie("Time", format);
response.addCookie(cookie);
//第一次请求是不带cookie的所以timeValue为null,第二次请求时是带着cookie请求的
String timeValue = null;
Cookie[] cookies = request.getCookies();
response.setContentType("text/html;charset=utf-8");
for (Cookie cookie1 : cookies) {
if (cookie1.getName().equals("Time")) {
timeValue = cookie1.getValue();
}
}
if (timeValue == null) {
response.getWriter().write("欢迎您访问我们的网站");
} else {
response.getWriter().write("你上次访问的时间是" + timeValue);
}
}
}
本文介绍了一个Servlet示例,展示了如何通过Java Servlet API创建并读取HTTP Cookie。Servlet在响应中设置一个包含当前时间的Cookie,并在后续请求中读取此Cookie,显示用户上一次访问的时间。
1528

被折叠的 条评论
为什么被折叠?



