Spring(58)
-
[Spring Data Commons] 2.1. Spring Data Repository
핵심 개념확장 인터페이스기타 파생 쿼리메서드 질의하기Repository 인터페이스 정의쿼리 메서드 선언Java 구성파일 설정Repository 주입Repository Interface 정의하기1. 핵심 개념Spring Data Repository 추상화의 목표는 다양한 퍼시스턴스 저장소의 데이터 접근 계층을 구현하는데에 필요한 보엘러플레이트 코드를 줄이는 것입니다.Spring Data Repository 추상화의 중심 인터페이스는 Repository 입니다.이것은 도메인 클래스를 관리하면서 도메인클래스의 식별자를 유형인수로써 사용합니다.Spring Data에서는 도메인 타입을 Entity 라고 부릅니다. (= 또는 Aggregate 라고도 부릅니다.)각 도메인 객체는 식별자(ID) 가 있고, 데이터를 액..
2024.12.17 -
[Spring Data Commons] 1. 개요
Spring Data Commons 프로젝트는 다양한 관계형 & 비관계형 데이터 저장소에 사용되는 솔루션 개발의 핵심 Spring 개념을 제공합니다.1. Dependencies각각의 Spring Data 모듈들의 시작일이 모두 다르기 때문에 대부분 major, minor 버전이 다릅니다.호환되는 버전을 찾는 가장 쉬운 방법은 Spring Data Release Train을 사용하는 것입니다.Spring Data Release Train내에는 각 모듈이 통합적으로 호환되기 위한 버전이 정의되어있습니다.1.1. Spring Data release train BOM릴리즈 트레인 버전은 calver 패턴 양식인 YYYY.MINOR.MICRO 을 따르며, 현재 날짜 기준으로 2024.1.0 입니다.※ spring..
2024.12.16 -
[Spring Boot Core] 2.2. Externalized Configuration
spring.config.namespring.config.locationoptional locationwildcard locationprofile별 구성 파일특정 프로파일 활성화Last wins 전략추가 데이터 importProfipe-specific varinants 가져오기확장자 없는 파일 가져오기configtreeproperty placeholders다중 문서 파일 작업활성화 프로퍼티Spring Boot 는 애플리케이션이 시작될 때, application.properties 와 application.yml 파일을 아래의 경로로부터 자동으로 찾아서 로드합니다.classpath로 부터 찾기classpath의 rootclasspath 하위의 /config 패키지현재 디렉토리에서 찾기현재 디렉토리현재 디렉..
2024.12.09 -
[Spring Boot Core] 2.1. Externalized Configuration 개요와 JSON Application Properties 설정하기
구성설정 외부화 개요예제command line 프로퍼티 액세스JSON Application properties예제 코드JSON Application Properties 설정하기테스트1. 구성설정 외부화 개요Spring Boot 를 이용하면, configuration을 외부화하여 여러 환경에서 동일한 코드를 활용하여 애플리케이션을 실행시킬 수 있습니다.Java Config 파일, YAML 파일, 환경변수 및 명령어 인수 등을 통해 다양한 외부 구성 소스를 활용할 수 있습니다.Spring 에서는 아래 3가지 방식으로 값을 주입합니다.@Value 애너테이션을 이용하여 Bean에 직접 주입Spring 의 환경 추상화를 통한 접근@ConfigurationProperties 로 객체에 바인딩하여 활용Spring B..
2024.11.03 -
[Spring Boot Core] 1. SpringApplication
Spring Appplicationstartup 실패지연 초기화커스텀 배너SpringApplication 커스텀애플리케이션 가용성웹 환경application arguments 접근Application 또는 CommandLineRunner애플리케이션 종료관리자 기능애플리케이션 시작 추적1. 시작 시간 분석1. 특정 startup event만 필터링하여 분석1. jq json processor 를 이용한 빈 초기화 기간 조회SpringApplication 클래스는 main()메서드를 이용하여 편리하게 Spring 애플리케이션 부팅을 제공합니다.SpringApplication.run 정적 메서드에게 위임하여 애플리케이션을 실행합니다.@SpringBootApplicationpublic class SpringBo..
2024.10.22 -
[Spring Boot Core] Actuator를 이용한 환경 변수 모아보기
dependency 추가actuator endpoints 설정환경변수 보이게 설정Spring Application을 이용하여 개발을 하는 중에, OS에 설정되어있는 환경 변수나, 프로퍼티를 통해 설정된 프로파일 값들이 어떻게 적용되어있는지 한눈에 확인해보고 싶은 경우가 종종 있습니다.Spring Actuator 에서는 이러한 환경정보를 모아서 json형태로 내려주는 기능을 제공합니다.1. dependency 추가사용중인 dependency 관리툴에 따른 dependency를 추가해줍니다.implementation("org.springframework.boot:spring-boot-starter-actuator:3.3.4")build.gradle.kts (Gradle - Kotlin)dependency> ..
2024.10.15