需求:创建一个FirstCookieServlet 客户端访问这个Servlet

              如果是第一次访问这个Servlet 显示 欢迎第一次访问

      如果不是第一次访问这个Servlet 显示 欢迎回来

1.创建根据名字得到cookie的工具类

package com.offcn.utils;

import javax.servlet.http.Cookie;

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

2.主程序

package com.offcn.servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import com.offcn.utils.CookieUtil;

public class FirstCookieServlet extends HttpServlet {

	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		this.doPost(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		response.setContentType("text/html;charset=utf-8");
		
		PrintWriter out = response.getWriter();
		
		Cookie[] cs = request.getCookies();
		Cookie c = CookieUtil.findCookiesByName(cs, "visited");
		if(c==null){
			out.print("<h1>欢迎您首次访问</h1>");
		}else{
			out.print("<h1>欢迎回来</h1>");
		}
		Cookie cookie = new Cookie("visited","true");
		cookie.setMaxAge(10000);
		response.addCookie(cookie);
	}

}

 

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐