JPA EntityManager를 이용한 Query 생성 시 발생하는 QuerySyntaxException 해결법
JPA의 EntityManager를 사용하여 쿼리를 생성할 때, "Foo is not mapped"과 같은 QuerySyntaxException 오류가 발생하는 경우가 있습니다. 이 문제는 주로 모델 설정에서 발생합니다.
모델 설정 예시
@Entity @Table(name="USERS") @Data public class User { @Id @Column(length = 10) private String id; @Column(length = 20, nullable = false) private String name; @Column(length = 20, nullable = false) private String password; }
위와 같이 모델을 설정했다면, 쿼리 내에서 테이블 명을 'USERS'가 아닌 클래스 명인 'User'를 사용해야 합니다. 이는 JPA의 특성으로 인해 클래스 이름이 엔티티 이름으로 매핑되기 때문입니다.
0 개의 댓글:
Post a Comment