Cookie 방문수
// java
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html; charset=utf-8");
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hello</title>");
out.println("</head>");
out.println("<body>");
Cookie cookies[] = req.getCookies();
Cookie visitedCookie = null;
if(cookies != null) {
// 쿠키를 검색
for (int i = 0; i < cookies.length; i++) {
if(cookies[i].getName().equals("visited1")) {
visitedCookie = cookies[i];
break;
}
}
// 쿠키를 설정
if(visitedCookie != null) {
int visit = Integer.parseInt(visitedCookie.getValue()) + 1;
out.println("<p>");
out.println(visit);
out.println(" 번째 방문입니다.");
out.println("</p>");
visitedCookie.setValue(visit + "");
visitedCookie.setMaxAge(30); // 쿠키 지속시간 (1년)365*24*60*60
resp.addCookie(visitedCookie);
}
else {
out.println("<p>첫번째 방문입니다</p>");
Cookie newCookie = new Cookie("visited1","1");
resp.addCookie(newCookie);
}
}else {
out.println("<p>첫번째 방문입니다</p>");
Cookie newCookie = new Cookie("visited1","1");
resp.addCookie(newCookie);
}
out.println("<a href=\"deleteCookie\">쿠키삭제</a>");
out.println("</body>");
out.println("</html>");
out.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
// TODO Auto-generated method stub
super.doPost(req, resp);
}
// deleteCookie java
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
resp.setContentType("text/html; charset=utf-8");
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hello</title>");
out.println("</head>");
out.println("<body>");
Cookie cookies[] = req.getCookies();
Cookie visitedCookie = null;
if(cookies != null) {
// 쿠키를 검색
for (int i = 0; i < cookies.length; i++) {
if(cookies[i].getName().equals("visited1")) {
visitedCookie = cookies[i];
break;
}
}
if(visitedCookie != null) {
visitedCookie.setMaxAge(0); // 유효시간을 만료시킨다.
resp.addCookie(visitedCookie);
out.println("<p>쿠키를 삭제했습니다</p>");
}
}
out.println("</body>");
out.println("</html>");
out.close();
}