Spring Boot/Annotations(2)
-
@SessionAttributes / @ModelAttribute 란?
웹 서비스 개발 시, 클라이언트와 서버 저장소의 이해는 필수적입니다. 클라이언트 저장소는 로컬 스토리지, 세션 스토리지, 쿠키를 포함하며, 서버 저장소는 세션, 데이터베이스, 캐시를 포함합니다. 프론트엔드와 백엔드 개발자 간의 세션에 관한 혼란을 방지하기 위해 이들의 구분이 중요합니다. HTTP는 상태를 저장하지 않는 무상태 프로토콜이며, 각 요청은 독립적으로 처리됩니다. 이러한 특성은 웹 서비스에서 사용자의 상태를 유지하는 데 제약을 주지만, 실제 웹 서비스는 로그인 상태 유지나 장바구니 정보 보존과 같이 클라이언트 상태를 유지해야 합니다. 이를 위해 세션과 쿠키를 사용하여 클라이언트의 상태를 서버가 기억할 수 있게 합니다. 세션은 서버 메모리, 데이터베이스, 또는 캐시 서버 같은 다양한 기술로 구성될..
2023.08.08 -
@Builder
@Builder annotation은 Lombok 라이브러리에서 제공하는 annotation 중 하나로, Builder 패턴을 자동으로 생성해주는 역할을 합니다. Builder 패턴은 객체 생성 시 사용되며, 복잡한 객체를 생성하기 위해 사용됩니다. @Builder annotation을 사용하면 Builder 패턴을 사용하는 코드를 간단하게 작성할 수 있습니다. Builder 디자인 패턴은 객체를 생성하는 디자인 패턴 중 하나로, 복잡한 객체를 생성할 때 사용됩니다. Builder 디자인 패턴은 객체의 생성 과정을 단계적으로 나누어 처리하며, 각 단계에서 필요한 값을 입력받아 객체를 생성합니다. 이를 통해 객체 생성 과정을 단순화하고, 코드 가독성을 높일 수 있습니다. Builder 패턴은 다음과 같은 ..
2023.04.17