2012-05-13 3 views
2

같은 주제 ... 하나의 엔티티에서 두 개의 다른 유형으로 데이터베이스에서 동일한 필드를 가져 오는 방법은 무엇입니까?JPA : 단일 데이터베이스 필드, 동일한 엔터티의 다른 개체에 여러 번

@Entity 
@Table(name = "ROOMS") 
public class Rooms implements Serializable { 
private static final long serialVersionUID = 1L; 

@Id 
@GeneratedValue(strategy = GenerationType.IDENTITY) 
@Column(name = "ID_ROOM") 

private int idRoom; 

@ManyToOne 
@JoinColumn(name = "ID_HOTEL") 
private Hotel hotel; 
//and right here I need a something like 

@JoinColumn(name = "ID_HOTEL") 
private int hotelId; 

하지만 .... 나는 삽입하거나 updateing을 위해 그것을 필요 없어요 ... 단지 EL을 사용하여 일부 검색을 수행하기위한 필요 ....

+1

'Rooms.hotelId =?'대신'Rooms.hotel.id =? '를 사용할 수 있다는 사실을 알고 있습니까? –

+0

CriteriaQuery :/im이 PrimeFaces에서 LazyDataModel 용 필드를 필터링하여 추상 DAO를 만들려고 노력하지 않았습니다 ... –

+0

정확히 무엇이 작동하지 않습니까? 기준 쿼리에서 하위 개체를 가져 왔습니까? – Perception

답변

4

귀하의 hotelId는 @Basic입니다 @Column not @JoinColumn을 사용해야합니다. 또한 두 열을 매핑 할 때 열 중 하나를 insertable/updateable = false로 설정해야합니다.

관련 문제