본문 바로가기
교재 실습/자바 웹 프로그래밍 Next Step

6.2.1 요구사항

by Jint 2025. 4. 25.

실습은 5장에서 구현한 HTTP 웹 서버에서 시작할 수 있다. 만약 5장의 리팩토링을 완료하지 못했다면, https://github.com/slipp/web-application-server 저장소의 was-step3-controller-refactoring 브랜치에서 시작할 수 있다.

요구사항은 서블릿에서 지원하는 HttpSession API의 일부를 지원해야 한다. HttpSession API 중 구현할 메서드는 getId(), setAttribute(String name, Object value), getAttribute(String name), removeAttribute(String name), invalidate() 5개 이다. HttpSession 의 가장 중요하고 핵심이 되는 메서드이다.

각 메서드의 역할은 다음과 같다.

 

· String getId() : 현재 세션에 할당되어 있는 고유한 세션 아이디를 반환

· void setAttribute(String name, Object value) : 현재 세션에 value 인자로 전달되는 객체를 name 인자 이름으로 저장

· Object getAttribute(String name) : 현재 세션에 name 인자로 저장되어 있는 객체 값을 찾아 반환

· void removeAttribute(String name) : 현재 세션에 name 인자로 저장되어 있는 개체 값을 삭제

· void invalidate() : 현재 세션에 저장되어 있는 모든 값을 삭제

 

세션은 클라이언트와 서버 간에 상태 값을 공유하기 위해 고유한 아이디를 활용하고, 이 고유한 아이디는 쿠키를 활용해 공유한다고 했다. 여기서 힌트를 얻어 실습을 진행한다. 먼저 어떻게 구현할 것인지 대략적인 설계와 요구사항을 좀 더 작게 나눈 후 구현을 시작한다.



참고도서 : https://roadbook.co.kr/169

 

[신간안내] 자바 웹 프로그래밍 Next Step

● 저자: 박재성 ● 페이지: 480 ● 판형: 사륙배변형(172*225) ● 도수: 1도 ● 정가: 30,000원 ● 발행일: 2016년 9월 19일 ● ISBN: 978-89-97924-24-0 93000 [강컴] [교보] [반디] [알라딘] [예스24] [인터파크] [샘

roadbook.co.kr

댓글