서버 실행 시 기존에 사용하던 ex01 경로와 충돌 때문에 에러 발생 >> 기존 사용 ex01 경로 주석 처리 >> 서버 재실행 >> 서버 구동 완료
쿠키 발급, 조회, 삭제
CookieController 클래스 파일 생성 >> cookie 경로로 이동되면 출력될 jsp 파일 생성 >> 접속 후 쿠키 존재 여부 확인
기본 발급 쿠키를 제외하곤 쿠키가 존재하지 않음
쿠키를 생성하여 발급 >> 확인 ( 5초 뒤 쿠키가 삭제되는 것 확인 )
req 를 통해 쿠키 값을 확인
특정 쿠키의 값만 확인할때
@CookieValue 어노테이션 사용
@CookieValue 어노테이션을 사용해서 확인 >> required = false 를 사용하여 쿠키 값이 존재하지 않는다면 null 로 처리하겠다고 선언 >> cook 을 출력하면 객체 값 출력, getName(), getValue() 메소드 사용하여 이름과 값을 가져와서 사용
쿠키 값 확인을 위해 경로 추가 >> cookie02.jsp 추가 ( 팝업 띄울 것임 )
팝업창 경로 추가 >> 팝업 내용 작성
하루동안 열지 않음 클릭 시 cookieChk 경로로 이동 >> Controller 에 하루동안 열지 않음 클릭 시 쿠키를 발급할 경로를 추가 및 쿠키 발급
쿠키가 존재하지 않으면 팝업창을 띄우게 설정 1
( 백엔드, 프론트엔드가 나눠져 있는 경우 사용 불가, 사용하는 문법이 jsp 문법이므로 )
쿠키 값이 존재하지 않으면 팝업창 출력되게 설정
쿠키가 존재하지 않으면 팝업창을 띄우게 설정 2
( 자바스크립트 문법을 사용 )
쿠키 값이 존재하지 않으면 팝업창 출력되지 않게 설정
세션 발급, 조회, 삭제
파일 세팅
makeSession 경로로 들어오면 세션을 발급 >> makeSession.jsp 에서 세션 값 확인 >> 웹에서 확인
resultSession 경로 Controller 에 추가 >> resultSession.jsp 파일 작성
만약 Attribute 로 세션과 동일한 이름의 값이 존재한다면 단순 출력 시 생존 범위가 좁은 Attribute ( request 와 생존 범위가 동일 > 현재 페이지에서만 생존 ) 가 출력되므로 sessionScope.[세션이름] 으로 세션을 확인 및 사용한다
delSession.jsp 작성 >> Controller 에서 세션을 삭제하는 방법 두가지 사용 ( HttpServletRequest, HttpSession 두 가지 사용 )
세션 발급, 조회, 삭제 완료
로그인 구현
jsp 파일 세 개 ( login, logout, main ) 세팅
login 경로 추가 >> login.jsp 작성 >> 확인
아이디 비밀번호 입력 후 로그인 시 이동될 check 경로 Controller 에 설정 >> main.jsp 작성 >> 확인
로그아웃 시 세션 삭제 Controller 에 구현 >> logout.jsp 작성 >> 확인
로그인 사용자는 로그인 페이지 접속 시 세션정보 출력 및 로그아웃 할 수 있게 세팅
로그인 하지 않고 logout 으로 접속 시도 할 시 session 으로 로그인 상태 확인하여 login 페이지로 redirect