프로그래밍 방식으로 jpa 쿼리의 유효성을 검사하는 올바른 방법은 무엇입니까? Hibernate는 엔티티에 대한 모든 주석 기반 명명 된 질의의 유효성을 검사한다. 하지만 프로그래밍 방식으로 빌드 된 jpa 쿼리에서이 유효성 검사 루틴을 호출하여 오류를 검사하려면 어떻게해야합니까?JPA/Hibernate : jpa 쿼리의 코드 기반 유효성 검사
@Entity public class Foo { @Id public int id; public String name; }
main(...) { Query q = getEntityManager().createQuery("select e from " + Foo.class.getName() + " e where e.name = 'x' "); // validate q here }
나는 단지 hibernate가 @namedquery를 위해하는 것과 마찬가지로 프로그램 적으로 생성 된 쿼리의 유효성을 검사하기를 원한다. 오류가 발견되면 프로그램을 종료해야합니다. 여기서 수표는 여기서 질문이 아닙니다. 어떻게 생각합니까? – H2000
@KlausMeier - 여기를 보면 : https://www.hibernate.org/hib_docs/v3/api/org/hibernate/Session.html#createQuery(java.lang.String), 당신은 createQuery) 메서드는 예외를 throw 할 수 있습니다. 그것은 이미 당신을 위해 유효성 검사를하고있을 것입니다. 깨진 쿼리를 입력하여 어떤 일이 발생했는지 확인하십시오. –