-
13. CookieJSP/실전 JSP 2022. 11. 6. 00:52
13-1. Cookie란 ?
- 클라이언트와 서버의 연결을 유지시켜주는 방법
- 브라우저(클라이언트)와 서버가 연결을 시도한 흔적을 남김
- 보안에 취약할 수 있음
13-2. Cookie 구현
login.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Insert title here</title> </head> <body> <% Cookie[] cookies = request.getCookies(); System.out.println("cookies : " + cookies); if(cookies != null) { for(Cookie c : cookies) { if(c.getName().equals("memberId")) { response.sendRedirect("loginOk.jsp"); } } } %> <form action="loginCon" method="post"> ID : <input type="text" name="mID"></br> PW : <input type="password" name="mPW"></br> <input type="submit" value="login"> </form> </body> </html>
loginOk.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html> <html> <head> <meta charset="EUC-KR"> <title>Insert title here</title> </head> <body> <% Cookie[] cookies = request.getCookies(); for(Cookie c : cookies) { out.print("name : " + c.getName() + "</br>"); out.print("value : " + c.getValue() + "</br></br>"); } %> </body> </html>
LoginCon.java
package com.servlet; import java.io.IOException; import java.io.PrintWriter; import java.util.Iterator; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.Cookie; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @WebServlet("/loginCon") public class LoginCon extends HttpServlet { protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); String mId = request.getParameter("mID"); String mPw = request.getParameter("mPW"); out.print("mId : " + mId); out.print("mPw : " + mPw); Cookie[] cookies = request.getCookies(); Cookie cookie = null; for (Cookie c : cookies) { System.out.println("c.getName() : " + c.getName() + ", c.getValue() : " + c.getValue()); if(c.getName().equals("memberId")) { cookie = c; } } if(cookie == null) { System.out.println("cookie is null"); cookie = new Cookie("memberId", mId); } response.addCookie(cookie); cookie.setMaxAge(60*60); response.sendRedirect("loginOk.jsp"); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
'JSP > 실전 JSP' 카테고리의 다른 글
15. 한글처리 (0) 2022.11.06 14. Session (0) 2022.11.06 12. Servlet 데이터 공유 (0) 2022.11.06 11. JSP 내장 객체 (0) 2022.11.05 10. JSP request, response (0) 2022.11.05