Spring Framework(164)
-
엔터프라이즈 관련 기능
엔터프라이즈 관련 기능은 주로 대규모 애플리케이션 개발을 지원하기 위한 추가 기능입니다. 이들은 주로 편의성, 확장성, 엔터프라이즈 통합, 그리고 유지보수성을 강화하기 위해 설계된 기능들입니다.1. 메시지 소스(MessageSource) 지원다국어 처리(i18n)를 지원하기 위해 메시지 소스를 관리합니다.ApplicationContext는 메시지 소스(MessageSource)를 내장하고 있어 다국어 지원 메시지를 로드할 수 있습니다.예제# messages.properties (기본)greeting=Hello!# messages_ko.properties (한국어)greeting=안녕하세요!@Componentpublic class MessageService { @Autowired private ..
2025.01.16 -
Service Locator Pattern
서비스 로케이터 패턴(Service Locator Pattern)은 애플리케이션에서 의존성 관리를 위한 디자인 패턴 중 하나로, 객체가 자신의 의존성을 얻기 위해 중앙화된 레지스트리 역할을 하는 서비스 로케이터를 사용하는 방식입니다. 이 패턴은 주로 객체가 직접 의존성을 생성하지 않고, 서비스 로케이터를 통해 필요한 의존성을 요청하여 얻는 구조를 제공합니다. 서비스 로케이터 패턴의 작동 방식서비스 로케이터는 애플리케이션 내에서 서비스 객체(의존성)를 등록하고, 필요한 경우 이를 클라이언트에 제공하는 역할을 합니다.클라이언트 객체는 서비스 로케이터에 의존하여 필요한 의존성을 조회하거나 검색(lookup)합니다.서비스 로케이터는 의존성을 캐싱하거나, 필요에 따라 동적 생성하여 반환합니다. 구조서비스 로케이터..
2025.01.16 -
WebMvcLinkBuilder
📌 WebMvcLinkBuilder란?WebMvcLinkBuilder는 Spring HATEOAS에서 하이퍼미디어 링크를 생성하는 유틸리티 클래스입니다.REST API에서 클라이언트가 동적으로 리소스를 탐색할 수 있도록 self, update, delete 등의 링크를 쉽게 추가하는 데 사용됩니다.🎯 1. WebMvcLinkBuilder의 역할✅ Spring MVC 컨트롤러의 메서드를 기반으로 동적으로 링크를 생성✅ RESTful API에서 HATEOAS(하이퍼미디어)를 지원하는 핵심 클래스✅ 클라이언트가 API 엔드포인트를 쉽게 탐색할 수 있도록 도움✅ Spring Boot 애플리케이션에서 URI를 직접 하드코딩하지 않고 자동으로 생성 가능📌 2. WebMvcLinkBuilder 사용법📌 Ste..
2024.12.11 -
_links
📌 _links란?_links는 RESTful API에서 하이퍼미디어(HATEOAS)를 지원하기 위해 사용되는 JSON 필드로,클라이언트가 API 응답을 통해 동적으로 리소스를 탐색할 수 있도록 도와줍니다.Spring HATEOAS에서는 RepresentationModel을 활용해 _links 필드를 자동으로 생성할 수 있습니다.🎯 1. _links의 개념🔹 REST API에서 리소스 간 탐색을 가능하게 함🔹 HATEOAS(Hypermedia as the Engine of Application State)의 핵심 요소🔹 각 리소스가 어떤 동작을 수행할 수 있는지 명확하게 제공🔹 클라이언트가 URL을 직접 구성하지 않고도 API를 동적으로 탐색 가능📌 2. _links의 역할과 구조✅ 예제 A..
2024.12.11 -
self 링크
🌐 Self 링크란?Self 링크는 RESTful API에서 현재 리소스를 참조하는 자기 자신을 가리키는 하이퍼미디어 링크입니다.REST API에서 클라이언트가 API 문서를 참조하지 않고도 동적으로 리소스를 탐색할 수 있도록 도와주는 HATEOAS(Hypermedia as the Engine of Application State) 개념의 핵심 요소입니다.📌 1. Self 링크의 역할🔹 현재 리소스를 명확하게 참조🔹 클라이언트가 URL을 직접 구성하지 않아도 API를 사용할 수 있도록 지원🔹 REST API의 유연성과 유지보수성을 향상🔹 HATEOAS를 활용한 동적 API 탐색 가능🎯 2. Self 링크의 특징특징설명📌 현재 리소스를 참조API 응답에 포함된 링크가 현재 데이터의 위치를 명..
2024.12.09 -
EntityModel
📌 EntityModel란?Spring HATEOAS에서 제공하는 EntityModel는 단일 리소스(엔터티)와 하이퍼미디어 링크를 함께 포함할 수 있는 컨테이너 클래스입니다.🔹 주요 역할1️⃣ REST API에서 엔터티 데이터를 감싸고 링크를 추가2️⃣ 하이퍼미디어(HATEOAS) 원칙을 따르는 API를 만들 수 있도록 지원3️⃣ RepresentationModel를 상속받으며, 추가적으로 엔터티 데이터를 보관 가능🎯 EntityModel의 기본 구조아래 License 클래스를 기반으로 EntityModel의 사용법을 알아보겠습니다.✅ 기본 엔티티 클래스import lombok.Getter;import lombok.Setter;@Getter@Setterpublic class License { ..
2024.12.09