쿠키(Cookie) 예제

    쿠키(Cookie) : 상태가 없는 프로토콜을 위해 상태를 지속하기 위한 방법으로,

    웹 사이트에 접속할 때 생성되는 정보를 담은 임시 파일이다.

    원래 사이트에 접속한 사용자의 정보를 유지하거나, 사이트에 접속하는 사용자들이

    해당 사이트에 쉽게 접속하기 위해 만들어졌다.

    - 쿠키 클래스 생성 : Cookie cookie = new Cookie(String name, String value);

    - 쿠키 생성 후 반드시 response 객체의 addCookie() 메소드를 사용해 쿠키를 추가해주어야 한다.

    그래야 생성된 쿠키가 response 객체에 실려 웹 브라우저에 응담시 브라우저에 저장된다.

    response.addCookie(name);

    - 쿠키 생성 후 쿠키의 값을 새로운 값으로 지정할 땐 setValue() 메소드 사용

    - 쿠키의 수명(지속시간)은 cookie 객체의 setMaxAge() 메소드 사용하여 지정한다.

    cookie.setMaxAge(int expiry); -> 초 단위 ex) 쿠키 생명 1일 : 60 * 60 *24

     

    makeCookie.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <h1>makeCookie.jsp</h1>
    <%
    	//쿠키 생성
    	Cookie cookie = new Cookie("id", "걸음마코드"); //쿠키 이름, 쿠키 값
    	//유효기간 설정 - 초단위
    	cookie.setMaxAge(60 * 2); //2분
    	// 응답객체(response)에 쿠키 추가
    	response.addCookie(cookie);
    %>
    <h2>아이디를 쿠키로 저장하였습니다.</h2>
    </body>
    </html>

    useCookie.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
        pageEncoding="UTF-8"%>
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>Insert title here</title>
    </head>
    <body>
    <h1>useCookie.jsp</h1>
    <%
    	//쿠키 얻기
    	String id = "";
    	//요청 객체(request)로부터 객체 얻기
    	Cookie[] cookies = request.getCookies();
    	for(Cookie cookie : cookies){
    		// 쿠키의 이름 얻기("id")
    		String CookieName = cookie.getName();
    		//쿠키의 이름으로 쿠키의 값 얻기
    		String cookieValue = cookie.getValue();
    		if(CookieName.equals("id")){
    			id = cookieValue;
    			break;
    		}
    	}
    %>
    <%=id %>님 반갑습니다.
    </body>
    </html>

     

    'JSP' 카테고리의 다른 글

    JSTL 정리 예제  (0) 2023.09.11
    세션(session) 개요  (0) 2021.01.16
    자바빈(JavaBean) 개요와 예제  (0) 2021.01.16
    include 액션태그(<jsp:include> 액션태그)  (0) 2021.01.16
    JSP페이지의 액션태그  (0) 2021.01.16

    댓글