본문 바로가기
728x90

spring data elasticsearch5

[SpringDataElasticsearch] Spring Data Repository의 기본과 Elasticsearch 세부 사항 Data Repositories Spring Data Repository의 기본과 Elasticsearch 세부 사항 설명. 1. 핵심 개념 (feat. Entity 상태 감지 전략) 2. Repository Interface 정의 Fine-tuning 저장소 정의 Spring Data Module 사용 3. Elasticsearch Repositories 4. Reactive Elasticsearch Repository (반응형) 사용 구성 5. Repository Instances 생성 (Instance & Bean) Java 구성 XML 구성 Filter 사용 6. Query Method 정의 7. Query Methods 쿼리 조회 쿼리 생성 Method 반환 타입 @Query 어노테이션 8. P.. 2023. 12. 16.
[SpringDataElasticsearch] Entity Callbacks. 특정 메서드가 호출되기 전후에 Entity 수정 사항을 적용하는 방법 Entity Callbacks 특정 메서드가 호출되기 전후에 Entity 수정 사항을 적용하는 방법. SpringData 인프라는 특정 메서드가 호출되기 전/후에 엔티티를 수정할 수 있는 훅을 제공하며, 이러한 EnttiyCallback 인스턴스는 Entity를 콜백 형식으로 확인하고 수정하는 편리한 방법을 제공한다. EntityCallback은 동기 및 반응형 API와의 통합 지점을 제공하며 ProcessChain 내에서 실행 순서를 보장하고, 수정된 Entity나 반응형 래퍼 유형을 반환할 수 있다. 엔티티 콜백 구현 (Implementing Entity Callbacks) EntityCallback은 일반적으로 제네릭 타입 인수를 사용하기 때문에 해당 도메인 타입과 직접적인 연관관계를 가진다. In.. 2023. 12. 16.
[SpringDataElasticsearch] Java 객체 JSON 데이터 매핑 방법. Object Mapping Java 객체(DomainEntity)를 Elasticsearch에 저장된 JSON 타입의 데이터에 매핑하고, 또 그 반대로 매핑하는 방법. Meta Model Object Mapping (메타 모델 객체 매핑) 메타모델(Metamodel) 기반 접근 방식은 Elasticsearch와의 데이터 읽기/쓰기를 위해 도메인 유형 정보를 사용한다. 이는 특정 도메인 유형 매핑을 위해 Converter 인스턴스를 등록하는 것을 허용한다. 1. Mapping Annotation Overview (매핑 주석 개요) MappingElasticsearchConverter는 메타데이터를 사용하여 객체를 문서로 매핑한다. 이 메타데이터는 Entity의 속성에서 가져오며, 이를 위해 다양한 주석을 .. 2023. 12. 16.
[SpringDataElasticsearch] Client 구현을 통한 사용 방법 Elasticsearch 클라이언트를 직접 사용하여 클러스터 작업을 수행할 수 있지만 SpringDataElasticsearch 클라이언트를 사용하면 DataAccess, ObjectMapping, Annotation, QueryDSL, Transaction 등을 이용하여 보다 쉽고 편리하게 Elasticsearch를 사용할 수 있게 도와준다. Imperative Rest Client (명령형 REST 클라이언트) 전통적인 동기식 프로그래밍 방식을 따르며, 요청을 보내고 응답을 기다리는 동안 블로킹되는 방식을 동작한다. Ex> RestTemplate, WebClient 등,, 명령형 (비반응형) 클라이언트를 사용하기 위한 Bean 구성 @Configuration public class MyClientCo.. 2023. 12. 16.
[SpringDataElasticsearch] Spring Data Elasticsearch란? Elasticsearch용 Spring Data는 저장소별 기능을 유지하면서 새로운 데이터 저장소에 익숙하고 일관된 Spring 기반 프로그래밍 모델을 제공하는 것을 목표로 하는 Spring Data 프로젝트의 일부이다. Spring Data 프로젝트 중 가장 많이 사용되고 있는 JPA (Spring Data JPA) 와 비슷하게 사용할 수 있기 때문에 보다 익숙하고 쉽게 Elasicsearch에 접근할 수 있게 도와준다. Spring Data Elasticsearch 프로젝트는 Elasticsearch 검색 엔진과의 통합을 제공하며, 주요 기능 영역은 Elasticsearch 문서와 상호 작용하고 Repository Style Data Access 계층을 쉽게 작성하기 위한 POJO 중심 모델이다. P.. 2023. 9. 25.
728x90