@SessionAttributes / @ModelAttribute
웹 서비스 개발 시, 클라이언트와 서버 저장소의 이해는 필수적입니다. 클라이언트 저장소는 로컬 스토리지, 세션 스토리지, 쿠키를 포함하며, 서버 저장소는 세션, 데이터베이스, 캐시를 포함합니다. 프론트엔드와 백엔드 개발자 간의 세션에 관한 혼란을 방지하기 위해 이들의 구분이 중요합니다. HTTP는 상태를 저장하지 않는 무상태 프로토콜이며, 각 요청은 독립적으로 처리됩니다. 이러한 특성은 웹 서비스에서 사용자의 상태를 유지하는 데 제약을 주지만, 실제 웹 서비스는 로그인 상태 유지나 장바구니 정보 보존과 같이 클라이언트 상태를 유지해야 합니다. 이를 위해 세션과 쿠키를 사용하여 클라이언트의 상태를 서버가 기억할 수 있게 합니다. 세션은 서버 메모리, 데이터베이스, 또는 캐시 서버 같은 다양한 기술로 구성될..
@Controller
Controller 웹 어플리케이션에서 컨트롤러(Controller)는 사용자의 HTTP 요청을 받아들이고, 이 요청을 처리하며, 그 결과에 따라 적절한 응답을 생성하는 컴포넌트입니다. 컨트롤러는 웹 어플리케이션의 중심적인 역할을 하며, 클라이언트(웹 브라우저, 모바일 앱 등)와 상호작용하여 사용자에게 웹 페이지, 데이터, 서비스 등을 제공합니다. 여러 가지 주요 역할과 특징을 갖는 웹 어플리케이션 컨트롤러에 대한 설명은 다음과 같습니다: 1. HTTP 요청 처리: 컨트롤러는 클라이언트의 HTTP 요청을 받아들이고 해당 요청을 처리합니다. 요청은 HTTP 메서드(GET, POST, PUT, DELETE 등)와 URL 경로로 구성되며, 컨트롤러는 이 정보를 사용하여 어떤 작업을 수행할지 결정합니다. 2. ..