0
JPA를 통해 코드에서 사용자 지정 SQL 함수를 호출해야합니다. 함수는 순수한 SQL로 작성되고 단일 부울 값과 관계를 리턴합니다. 즉JPA를 사용하여 from 절을 사용하지 않고 선택하는 방법
내가 다음 호출 할 JPA를 구현해야 할 선택 :
select function_xy(p1, p2);
먼저 구현 :
JPA를 통해 코드에서 사용자 지정 SQL 함수를 호출해야합니다. 함수는 순수한 SQL로 작성되고 단일 부울 값과 관계를 리턴합니다. 즉JPA를 사용하여 from 절을 사용하지 않고 선택하는 방법
내가 다음 호출 할 JPA를 구현해야 할 선택 :
select function_xy(p1, p2);
먼저 구현 :
"지정된, 조건이 뿌리를 조회하지":이 예외가 발생
final CriteriaBuilder cb = em.getCriteriaBuilder();
final CriteriaQuery<Boolean> criteriaQuery = cb.createQuery(Boolean.class);
final Expression<Boolean> func = cb.function("function_xy", Boolean.class,
cb.literal("bla bla"), cb.literal(someEntity.getId()));
criteriaQuery.select(func);
final TypedQuery<Boolean> query = em.createQuery(criteriaQuery);
final List<Boolean> result = query.getResultList();
return ResourceUtils.getSingleResult(result);
기준 api 메소드 "function"은 from 절이없는 select에서 함수를 호출하는 데 사용할 수 없습니다.
final List<Object> result = em.createNativeQuery("select function_xy(:p1, :p2)")
.setParameter("p1", "bla bla")
.setParameter("p2", someEntity.getId())
.getResultList();
return (Boolean) ResourceUtils.getSingleResult(result);
:
대신 네이티브 쿼리를 사용하여