👩💻TIL/JPA
[JPA/Hibernate] Restrictions 다중 조건 설정하기
devuna
2020. 8. 5. 18:32
728x90
[JPA/Hibernate] Restrictions 다중 조건 설정하기
최근 Groovy&Grails를 사용하면서 JPA ORM 과 유사한 GORM을 사용하고 있다. GORM이란?
GORM과 ORM은 기본 문법이나, 큰 틀이 거의 유사하다.
하이버네이트 쿼리문을 작성하는 과정에서 조건을 2개 설정할때 오류가 발생했는데
원하는 equal 조건을 담은 다음 and로 연결하니 쿼리가 아주 잘 돌아갔다😂
1. 먼저 Criterion으로 eq 조건을 담아준다.
Criterion period = Restrictions.eq('period', searchPeriod)
Criterion type = Restrictions.eq('type', searchType)
Criterion username = Restrictions.eq("username", username);
2. 작성한 eq 조건들을 and에 담아준다. 이때, LogicalExpression를 중복해서 사용할 수도 있다.
LogicalExpression and = Restrictions.and(period, type);
LogicalExpression userAnd = Restrictions.and(and, username);
즉, 하이버네이트 다중 조건은 설정을 위해서는 원하는 equal 조건을 담은 다음 and를 사용하면 간단하게 해결!
728x90