Spring Boot(77)
-
Configuration
Spring Data JPA를 설정하는 방법에는 두 가지가 있습니다:Annotation-based Configuration (Java configuration)Spring Namespace (XML configuration)여기서는 첫 번째인 Annotation-based Configuration을 설명합니다.Annotation-based Configuration (JavaConfig)Spring Data JPA 리포지토리 지원은 JavaConfig 또는 XML 네임스페이스를 사용하여 활성화할 수 있습니다. 아래는 JavaConfig를 사용하는 예시입니다:@Configuration@EnableJpaRepositories@EnableTransactionManagementclass ApplicationCon..
2024.10.19 -
Defining Repository Interfaces
📌 Spring Data JPA Repository 인터페이스 정의 및 활용 정리Spring Data에서는 Repository 인터페이스를 정의하여 데이터 액세스 로직을 쉽게 관리할 수 있습니다.아래에서 CRUD 인터페이스의 종류와 활용법, 다중 모듈 사용 시 유의할 점 등을 정리해보겠습니다. 🚀🎯 1. Repository 인터페이스 정의Repository 인터페이스는 특정 도메인 엔티티와 ID 타입을 지정해야 합니다.🔹 ✅ 기본 Repository 인터페이스interface UserRepository extends Repository { }위와 같이 Repository 를 확장하면 CRUD 기능이 기본적으로 제공되지 않습니다.→ 만약 CRUD 기능을 제공하려면 CrudRepository 또는 J..
2024.10.19 -
Core concepts
Repository 인터페이스중심 인터페이스: Spring Data 리포지토리 추상화의 중심 인터페이스는 Repository입니다. 이 인터페이스는 관리할 도메인 클래스와 도메인 클래스의 identifier 타입을 제네릭 타입 파라미터로 받습니다. 기본적으로 이 인터페이스는 마커 인터페이스로 사용되며, 작업할 타입을 캡처하고 이를 확장하는 인터페이스를 발견하는 데 도움을 줍니다.도메인 객체: Spring Data는 도메인 타입을 엔티티로 간주하며, 보다 구체적으로 집합체(aggregate)로 설명합니다. 따라서 문서 전반에 걸쳐 "엔티티"라는 용어가 사용되며, 이는 "도메인 타입"이나 "집합체"와 상호 교환할 수 있습니다.도메인 주도 설계(DDD): 도메인 객체는 DDD의 관점에서 정의됩니다. 도메인 객..
2024.10.19 -
Getting Started
시작하기프로젝트 생성:start.spring.io: Spring이 제공하는 웹 기반 인터페이스로, Spring Boot 프로젝트를 신속하게 생성할 수 있습니다. 종속성을 선택하고 프로젝트 메타데이터(그룹 ID, 아티팩트 ID 및 버전 등)를 입력한 후, ZIP 파일 형식으로 프로젝트 구조를 다운로드할 수 있습니다.Spring Tools: Eclipse, IntelliJ 등에서 사용할 수 있는 IDE 플러그인으로, Spring 프로젝트를 생성하고 관리하는 데 도움을 줍니다. 최소한의 노력으로 Spring Boot 애플리케이션을 구성할 수 있는 내장 마법사를 제공합니다.예제 리포지토리GitHub의 spring-data-examples 리포지토리는 Spring Data의 다양한 기능을 보여주는 샘플 애플리케이..
2024.10.19 -
Spring Boot Auto-Configuration
Spring Boot의 자동 구성(auto-configuration)은 매우 세밀하게 설계된 프로세스로, 애플리케이션이 시작될 때 필요한 다양한 설정을 자동으로 처리합니다. 이 과정을 단계별로 상세하게 설명하겠습니다. 각 클래스와 메커니즘이 어떻게 상호작용하는지를 살펴보며, 최종적으로 자동 구성이 어떻게 이루어지는지 깊이 이해할 수 있도록 하겠습니다.1. 애플리케이션 시작: @SpringBootApplication, @EnableAutoConfiguration, @AutoConfigurationPackageSpring Boot 애플리케이션이 시작될 때, 개발자는 일반적으로 @SpringBootApplication 애노테이션을 사용합니다. 이 애노테이션은 내부적으로 세 가지 중요한 애노테이션을 포함하고 있..
2024.10.18 -
ConfigurationClassPostProcessor
ConfigurationClassPostProcessor는 스프링 프레임워크에서 매우 중요한 역할을 하는 클래스 중 하나로, @Configuration을 기반으로 하는 Java 기반의 설정 클래스를 처리하고 관리하는 핵심 빈 팩토리 후처리기(BeanFactoryPostProcessor)입니다. 이 클래스는 주로 빈 정의를 읽고, 분석하며, 이를 바탕으로 빈을 등록하는 과정을 수행합니다. 특히 Spring 3.0 이후 Java 기반 설정 클래스가 도입되면서 더욱 중요한 역할을 하게 되었습니다.1. 주요 역할ConfigurationClassPostProcessor는 스프링에서 애노테이션 기반 설정을 처리하는 과정에서 중요한 역할을 합니다. 주요 작업은 다음과 같습니다:@Configuration, @Compo..
2024.10.18