728x90
반응형
Cookies |
- 클라이언트에 저장됨 - 암호화가 되지 않아 보안성이 낮다 - 웹서버는 웹브라우저가 전송한 쿠키를 사용해 필요한 데이터를 읽어올 수 있다. - 유효기간 미설정시 웹브라우저에 저장(웹브라우저 닫을 때 삭제) - 유효기간 설정시 사용자의 PC에 저장됨 (유효기간이 지나면 자동으로 삭제) - 쿠키는 그 크기가 하나에 4KB이하로 제한이 되어 있으며, 총 300개까지 정보를 저장할 수 있다. 따라서, 최대로 저장 가능한 쿠키의 용량은 1200KB 즉 1.2MB |
response.addCookie( ); | |
request.getCookies( ); |
response.addCookie(cookie_id);
<%@ 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> <form action="15_01_cookies01_process.jsp" method="post"> <p>아이디 : <input type="text" name="id"></p> <p>비밀번호 : <input type="text" name="passwd"></p> <p><input type="submit" value="전송"></p> </form> </body> </html>
<%@ 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> <% String user_id = request.getParameter("id"); String user_pw = request.getParameter("passwd"); if(!(user_id == null || user_pw == null)){ if(user_id.equals("admin") && user_pw.equals("1234")){ //쿠키 객체 생성 Cookie cookie_id = new Cookie("userID", user_id); Cookie cookie_pw = new Cookie("userPW", user_pw); //응답객체에 쿠키 추가(클라이언트 브라우저에 저장) response.addCookie(cookie_id); response.addCookie(cookie_pw); out.println("쿠키 생성이 성공했습니다<br>"); out.println(user_id+"님 환영합니다."); }else{ out.println("세션 설정이 실패했습니다."); } } %><br> </body> </html>
request.getCookies();
<%@ 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> <% Cookie[] cookies = request.getCookies(); if(cookies != null) { out.println("현재 설정된 쿠키의 개수 => " + cookies.length + "<br>"); out.println("==========================<br>"); for(int i = 0; i < cookies.length; i++){ out.println("설정된 쿠키의 속성 이름 [ " + i + " ] : " + cookies[i].getName() + "<br>"); out.println("설정된 쿠키의 속성 값 [ " + i + " ] : " + cookies[i].getValue() + "<br>"); out.println("-------------------------------------------<br>"); } }else{ out.print("쿠키가 없습니다."); } %> </body> </html>
aa
<%@ 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> <% Cookie[] cookies = request.getCookies(); for(int i = 0; i < cookies.length; i++){ //쿠키만료시간 설정 cookies[i].setMaxAge(60*60); //쿠키삭제 // cookies[i].setMaxAge(0); response.addCookie(cookies[i]); //setMaxAge 후 addCookie 처리 해줘야 반영됨 } response.sendRedirect("15_01_cookies02.jsp"); %> </body> </html>
728x90
반응형
'[JAVA]' 카테고리의 다른 글
Filter (0) | 2024.03.20 |
---|---|
[JSP] filter - monitor.log (0) | 2024.03.20 |
[JSP] session - getMaxInactiveInterval, getCreationTime, getLastAccessedTime (0) | 2024.03.20 |
[JSP] session - removeAttribute, invalidate (0) | 2024.03.20 |
[JSP] session - getAttributeNames, getAttribute / cookies (0) | 2024.03.19 |