코드스쿼드 백엔드 교육용 WAS 2025 개정판
- 자바 스레드 모델에 대해 학습한다. 버전 별로 어떤 변경점이 있었는지와 향후 지향점에 대해서도 학습해 본다.
- 자바 Concurrent 패키지에 대해 학습한다.
- 기존의 프로젝트는 Java Thread 기반으로 작성되어 있다. 이를 Concurrent 패키지를 사용하도록 변경한다.
- 주어진 소스 코드를 기반으로 기능요구사항을 만족하는 코드를 작성한다.
- 유지보수에 좋은 구조에 대해 고민하고 코드를 개선해 본다.
- 웹 리소스 파일은 제공된 파일을 수정해서 사용한다. (직접 작성해도 무방함)
- 2차 과제 구현
- HTTP Response 에 대해 학습한다.
- MIME 타입에 대해 이해하고 이를 적용할 수 있다.
- HTTP GET 프로토콜을 이해한다.
- HTTP GET에서 parameter를 전달하고 처리하는 방법을 학습한다.
- HTTP 클라이언트에서 전달받은 값을 서버에서 처리하는 방법을 학습한다.
- 기본적인 기능 구현
- 회원가입 완료 -> Redirection 구현
- 서블릿 구현 고민
- 테스트코드 작성
- 로그인을 GET에서 POST로 수정 후 정상 동작하도록 구현한다.
- GET으로 회원가입을 시도할 경우 실패해야 한다.
- 가입을 완료하면 /index.html 페이지로 이동한다.
- POST로 수정
- 회원가입 html 파일의 form 태그 내 method를 get에서 post로 수정한다.
- 나머지 회원가입 기능이 정상적으로 동작하도록 구현한다.
- 가입 후 페이지 이동을 위해 HTTP redirection 기능을 구현한다.
- HTTP Method 스펙 공부
- HTTP HEAD 메서드 구현
- HTTP POST 스펙 공부
- Redirection 스펙 공부
- HTTP body 스펙 공부
- 가입한 회원 정보로 로그인을 할 수 있다.
- [로그인] 메뉴를 클릭하면 http://localhost:8080/user/login.html 으로 이동해 로그인할 수 있다.
- 로그인이 성공하면 index.html로 이동한다.
- 로그인이 실패하면 /user/login_failed.html로 이동한다.
- 로그아웃도 정상 동작하도록 구현해 본다.
- 로그인이 성공할 경우 HTTP 헤더의 쿠키 값을 SID=세션 ID 로 응답한다.
- 세션 ID는 적당한 크기의 무작위 숫자 또는 문자열을 사용한다.
- 서버는 세션 아이디에 해당하는 User 정보에 접근할 수 있어야 한다.