Package com.altibase.document.util
Class JsonPathTranslator
java.lang.Object
com.altibase.document.util.JsonPathTranslator
JSON path 표현식을 Altibase SQL의 WHERE 절 조건자(predicate)로 변환하는 기능을 제공한다.
입력된 JsonPath 표현식을 검증한 뒤, Altibase의 JSON_EXISTS 함수에
안전하게 전달할 SQL/파라미터 쌍으로 변환한다.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final recordJsonPath 변환 결과를 담는 불변 객체이다. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic JsonPathTranslator.SqlResult지정된 JSONPath 필터 표현식을 Altibase SQL의JSON_EXISTS함수 호출 문자열로 변환한다.
-
Constructor Details
-
JsonPathTranslator
public JsonPathTranslator()
-
-
Method Details
-
convert
지정된 JSONPath 필터 표현식을 Altibase SQL의JSON_EXISTS함수 호출 문자열로 변환한다.입력: "$.name == \"John\" && $.age > 30" 반환: SQL = "JSON_EXISTS(DOCUMENT, '$.name == \"John\" && $.age > 30')"
Altibase의JSON_EXISTS는 경로 표현식에 바인딩 파라미터를 허용하지 않으므로, 허용된 문자만 포함하는 JsonPath를 검증한 뒤 SQL 리터럴로 안전하게 이스케이프하여 사용한다.- Parameters:
aFilter- 변환할 JSONPath 필터 표현식 문자열- Returns:
JSON_EXISTS함수 호출 SQL과 바인딩 파라미터
-