SimpleCORE
PLATFORMS & TOOLS / PROJECT

Searchable JPA

검색 조건을 정의하면 JPA 쿼리를 생성합니다.

목차 3세부 내용 3
프로젝트 상세
01 / 03
BROWSER

검색 조건 정의부터 쿼리 생성까지

검색 가능한 필드와 연산자를 애노테이션으로 정의하면 요청을 검증하고 JPA 검색 조건으로 변환합니다. 검색·정렬·페이지 나누기를 한 흐름으로 처리하며 OpenAPI 문서에도 같은 정의를 사용합니다. 그림은 요청에서 결과까지의 처리 과정을 설명합니다.

필드와 연산자로 검색 API를 구성합니다.

@SearchableField로 검색 대상과 허용 연산자를 정의합니다. 비교, 문자열, 목록, 범위와 NULL 조건을 조합하고 연관 엔티티의 필드도 경로로 지정합니다.

GET 매개변수와 POST JSON 요청을 검색 조건으로 변환합니다. Bean Validation과 함께 값의 형식·범위, 연산자와 페이지 크기를 검사하고 Specification·Criteria API로 검색을 구성합니다.

2단계 조회는 먼저 대상 ID를 구한 뒤 관련 데이터를 조회합니다. 복잡한 조인과 페이지 처리의 부담을 줄이는 구조이며, 실제 성능은 데이터·인덱스·검색 조건에 따라 달라집니다.

  • Java 17+
  • Spring Data JPA
  • Criteria API
  • Bean Validation
  • OpenAPI

검색 정의를 문서와 검증에도 사용합니다.

Java 17 이상, Spring Boot, Jakarta Persistence 기반입니다. 핵심 검색 모듈, OpenAPI 통합 모듈, Spring Boot 스타터로 나누어 구성합니다.

필드와 연산자 정의로 검색 매개변수의 OpenAPI 스키마를 생성합니다. 프론트엔드는 이 문서를 기준으로 검색 폼과 요청을 구성하고, 서버는 선언된 범위 안에서 조건을 처리합니다.

공식 문서에서 DTO 선언, 연관 검색, 페이지 제한과 데이터베이스별 사용법을 안내합니다. SimpleCORE License 1.0의 이용 조건은 제품 홈페이지에서 확인할 수 있습니다.

  • Java 17+
  • Spring Data JPA
  • Criteria API
  • Bean Validation
  • OpenAPI
© 2026 SIMPLECORE INC.CONTEXT. STRUCTURE. EXPERIENCE.