티스토리 뷰
쿠키:웹 브라우저가 보관하고 있는 데이터
예시- 장바구니, 팝업창, 아이디기억하기....
◇주로 웹서버에서 쿠키를 생성해서 웹 브라우저에게 전달하고, 웹브라우저는 서버에게 쿠키를 전달할수 있음
(웹 서버와 웹 브라우저에서 모두 쿠키를 생성할 수 있다.)
◇다음에 다시 페이지에 접속하게 되면 클라이언트가 해당 쿠키를 저장하고 있다가 서버가 요청할때 쿠키를 다시 전달한다.
[쿠키의 구동 순서]
1.클라이언트(웹브라우저)에서 서버로 페이지를 요청
2.서버에서 쿠키를 생성한 후 클라이언트의 요청에 대한 응답으로 쿠키를 함께 담아서 전달한다.
3.클라이언트는 서버가 준 쿠키를 저장한다.
4.클라이언트는 서버에 요청을 보낼 때마다 쿠키를 함께 전송한다.
5.서버는 클라이언트가 보내준 쿠키를 확인하여 페이지 관리를 할 수 있다.
쿠키와 비슷한 개념에는 session이 있는데 둘의 차이점은 쿠키는 데이터를 저장한다는 점이다.
※로그인 화면에서 아이디 저장을 해보기※
exam3_login.jsp
<%-- exam3_login.jsp --%>
<%
Cookie[] cookies = request.getCookies();//cookies안에 remember-printId,test가 들어감
String id = "";
for(Cookie c : cookies){
if(c.getName().equals("printId")){
id=c.getValue();
}
}
%>
<fieldset>
<form action="exam3_loginChk.jsp">
<%if(id==""){ %>
<input type="text" name="id" placeholder="아이디"><br>
<input type="password" name="pw" placeholder="비밀번호"><br>
<input type="checkbox" name="check" value="remember">아이디저장<br>
<%}else{ %>
<input type="text" name="id" value=<%=id %>><br>
<input type="password" name="pw" placeholder="비밀번호"><br>
<input type="checkbox" name="check" value="remember">아이디저장<br>
<%} %>
<br><input type="submit" value="로그인">
</form>
</fieldset>
exam3_loginChk.jsp
<%-- exam3_loginChk.jsp --%>
<%
String check = request.getParameter("check");
String id = request.getParameter("id");
String pw = request.getParameter("pw");
if(id.equals("test")&&pw.equals("1234")){
if(check !=null && check.equals("remember")){
Cookie remember = new Cookie("printId","test");
response.addCookie(remember);
}
}
response.sendRedirect("exam3_login.jsp");
%>
id가 test pw가 1234가 맞다면 로그인 창에 test가 그대로 남는 것을 쿠키를 이용하여 만들어보기.
exam3_loginChk.jsp
아이디 저장을 해제하고 test가 띄워지는 것도 지우고 싶다면
<%
String check = request.getParameter("check");
String id = request.getParameter("id");
String pw = request.getParameter("pw");
if(id.equals("test")&&pw.equals("1234")){
if(check !=null && check.equals("remember")){
Cookie remember = new Cookie("printId","test");
response.addCookie(remember);
}else{
Cookie remember = new Cookie("printId","test");
remember.setMaxAge(0);
response.addCookie(remember);
}
}
response.sendRedirect("exam3_login.jsp");
%>
exam3_loginChk.jsp페이지에 else구문을 입력해주면 된다.
쿠키의 수명이 0초로 하여 바로 쿠키를 삭제 가능하다
'JSP' 카테고리의 다른 글
JSP_세션(session) (0) | 2021.04.22 |
---|---|
JSP_Bean, setProperty,getProperty (0) | 2021.04.21 |
JSP_특정 URL로 이동하기_Redirect,RequestDispatcher.forward (0) | 2021.04.19 |
JSP_속성과 범위_pageContext, request, session, application (0) | 2021.04.19 |
JSP_선언문,스크립틀릿,표현식 (0) | 2021.04.14 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Margin
- 독학
- 자격증
- NAV
- request
- pageContext
- 정처산기
- getParameter
- scriptlet
- jsp
- span
- Redirect
- id
- application
- Expression
- this.
- padding
- Declaration
- 합격
- div
- forward
- link href
- CLASS
- 정보산업처리기사
- dl
- RequestDispatcher
- 정처기
- session
- 실기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
글 보관함