JavaFX Hibernate 매핑 에러
java.lang.IllegalArgumentException: org.hibernate.hql.internal.ast.QuerySyntaxException: user is not mapped [ FROM user]
에러가 발생했다.
에러만 봐서는 hibernate 매핑 문제인것 같다.
DB의 테이블명이 user라서 UserVO객체에도 @Table에 user로 해주었는데도 에러가 발생했다.
Query query = getSession().createQuery(" FROM user");
@Entity
@Table(name="user")
public class UserVO{
...
@Column(name="userName")
private String name;
...
}
에러의 원인은 Query에서 FROM의 테이블 명을 입력할 때는 DB의 테이블명이 아닌 도메인 클래스의 명을 써야 한다.
Query query = getSession().createQuery(" FROM UserVO");
이뿐 아니라 정렬을 할때도 마찬가지이다.
DB테이블의 컬럼명을 쓰지 말고 도메인 객체의 id를 써야 한다.
DB테이블의 컬럼명은 userName이고 도메인 객체의 UserVO는 name을 사용하고 있다면 name으로 사용해야 한다.
Criteria crit = getSession().createCriteria(UserVO.class);
crit.addOrder(Order.asc("name"));
'JavaFX' 카테고리의 다른 글
[JavaFX] 자바 FX CSS 디자인 종류 및 정리(feat. TableView style) (0) | 2020.04.29 |
---|---|
[JavaFX] 자바 fx ComboBox<T> key, value 값 설정? (0) | 2020.04.27 |
[JavaFX] JavaFX cannot set style once stage has been set visible 에러 (0) | 2020.04.13 |
[JavaFX] JavaFX Hibernate log4j 설정 - SQL 파라미터 값 보기 (0) | 2020.04.07 |
[JavaFX] JavaFX 하이버네이트 CRUD 데이터 저장 삭제 조회하기 (0) | 2020.04.04 |