0
Licitatie實體:Java的JPA - 實體之間的關係OneToOne不工作
@Entity
@Table(name="licitatie")
public class Licitatie implements Serializable {
...
//bi-directional one-to-one association to Licitatie
@OneToOne(mappedBy="licitatie")
private Produs produs;
...
}
Produs實體:
@Entity
@Table(name="produs")
//@DiscriminatorColumn(name="id", discriminatorType=DiscriminatorType.INTEGER)
@MappedSuperclass
public class Produs implements Serializable {
...
//bi-directional one-to-one association to Produs
@OneToOne
@JoinColumn(name="licitatie_id")
private Licitatie licitatie;
...
}
數據庫:
Licitatie:
id start status
1 5 open
2 5 open
3 5 open
個
Produs:
id licitatie_id DTYPE description
1 1 Carte ...
2 2 Carte ...
3 3 Carte ...
後我運行三查詢:「SELECT噸FROM Licitatie噸」,從類型的對象屬性產品Licitatie爲空。但是表格中有記錄。
我在做什麼錯了?
*編輯*
後,我從表中的數據,調用getProdus()返回此消息:
{IndirectSet:不實例}
你可能想看看嵌入式註釋... – Mechkov
我認爲沒有錯,除了MappedSuperClass註解。你確定**每**合法都有自己的產品(因爲查詢從數據庫返回每一個合法)?在licitatie_id列中是否存在唯一約束?什麼是JPA引擎? –
我相信每個「合法」只有一個「produs」記錄。 – Emanuel