"BooleanBuilder"와 "BooleanExpression"은 Spring Framework에서의 Querydsl 라이브러리에서 사용되는 용어
BooleanBuilder
Querydsl에서 제공하는 조건을 동적으로 구성하기 위한 빌더 클래스
복잡한 쿼리 조건을 처리하기 위해 사용되며, AND, OR 등의 논리 연산자를 사용하여 여러 개의 조건을 조합할 수 있다.
● BooleanBuilder를 사용하여 동적으로 쿼리 조건을 생성하고, 이를 쿼리 실행에 활용
BooleanExpression
Querydsl에서 사용되는 논리 표현식을 나타내는 인터페이스
쿼리 조건을 정의 및 쿼리 실행에 사용한다. 또한 Querydsl의 Predicate 인터페이스를 상속받아 사용할 수 있다.
● BooleanExpression은 조건을 표현하며, 필요한 조건을 구현하여 사용
"BooleanBuilder"와 "BooleanExpression" 차이가 뭔가요?
연속성의 차이
결국에는 둘 다 쿼리 표현식을 사용하는 건데 Booleanbuilder는 표현식의 묶음으로 builder 패턴처럼 and, or로 묶어서 사용할 수 있고, Booleanexpression는 단발성. 즉, Booleanexpression 하나의 쿼리식을 가지고 다른 표현과는 묶어서 사용할 수 없다.
e.g.
booleanbuilder a;
a.and(b).and(c)
where(a)
booleanexpression a;
booleanexpression b;
booleanexpression c;
where(a.and(b).and(c))
'Spring' 카테고리의 다른 글
| Spring Day 34 : @Cacheable, @CachePut, @CacheEvict (0) | 2024.03.20 |
|---|---|
| Spring Day 33 : 메서드 실행 시간 측정 기능 AOP (0) | 2024.03.15 |
| Spring Day 31 : Soft Delete v2 (2) | 2024.03.11 |
| Spring Day 30 : 통합 테스트, 단위 테스트 차이 (0) | 2024.03.08 |
| Spring Day 29 : 페이지 반환 타입 (1) | 2024.03.07 |