Class MongoQueryTranslator

java.lang.Object
com.altibase.document.util.MongoQueryTranslator

public class MongoQueryTranslator extends Object
MongoDB 스타일의 필터(BSON/JSON)를 Altibase SQL의 WHERE 절로 변환하는 핵심 유틸리티 클래스이다.

이 클래스는 MongoDB의 풍부한 쿼리 연산자($eq, $gt, $in, $or, $elemMatch 등)를 Altibase의 표준 SQL 함수(JSON_VALUE, JSON_EXISTS, REGEXP_LIKE 등)를 조합하여 의미적으로 동등한 SQL 조건문으로 변환하는 역할을 수행한다.

핵심 기능

  • 재귀적 파싱: 중첩된 BSON/JSON 구조를 재귀적으로 탐색하여 복잡한 논리 조건(AND, OR, NOT)을 처리한다.
  • 파라미터 분리: SQL 인젝션 공격을 방지하기 위해, 변환된 SQL 문자열과 실제 값(파라미터)을 분리하여 PreparedStatement에 안전하게 바인딩할 수 있도록 지원한다.
  • MongoDB 시맨틱 준수: 필드가 없는 경우의 동작($ne, $nin) 등 MongoDB 쿼리의 미묘한 시맨틱을 최대한 SQL로 정확하게 번역하려고 시도한다.

이 클래스는 모든 메서드가 정적(static)으로 구성되어 있어, 인스턴스화 없이 직접 사용할 수 있다.

See Also: