为什么我的cookie.setValue(value)不起作用?

  •  因为你在setValue(value)之后还要写一行代码

              response.addCookie(cookie);

  • 下面是一个简单的servlet,当我没有加上面的那句话的时候,cookie的值一直不更新,加上去就更新了.
  • CookieUtil是我写的一个工具类,也粘在下面了
package com.itheima.servlet;

import com.itheima.util.CookieUtil;

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;

@WebServlet(name = "Servlet04",urlPatterns = "/test4")
public class Servlet04 extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        doGet(request,response);
    }

    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        response.setContentType("text/html;charset=utf-8");
        Cookie[] cookies = request.getCookies();
        Cookie cookie = CookieUtil.findCookie(cookies,"test");
        if(cookie == null){
            response.getWriter().write("之前没有cookie");
            Date date = new Date();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
            response.addCookie(new Cookie("test",simpleDateFormat.format(date)));
        }else{
            response.getWriter().write(cookie.getValue());
            Date date = new Date();
            SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd-HH:mm:ss");
            cookie.setValue(simpleDateFormat.format(date));
            //response.addCookie(cookie);
        }
    }
}
package com.zzti.util;

import javax.servlet.http.Cookie;

public class CookieUtil {
    public static Cookie findCookie(Cookie[] cookies, String name){
        if(cookies!=null){
            for(Cookie cookie:cookies){
                if(cookie.getName().equals(name)){
                    return cookie;
                }
            }
        }
        return null;
    }
}

猜你喜欢

转载自blog.csdn.net/jdq8576/article/details/86675245