ORM: OneToOne mapping auf Non-Primary-Key Join-Spalte - Buch und Inventar zugeordnet ISBN

Habe ich ein Buch Modell-und Inventory-Modell abgebildet, indem die ISBN-Nummer, aber die ISBN ist nicht der Primärschlüssel in beiden. Bücher gehören zu den Buchhandlungen und Inventar wird für eine Gruppe von Buchhandlungen(BookstoreChain). Inventar ist geteilt durch alle Buchhandlungen Zugehörigkeit zu einer BookstoreChain.

Ich bin mit Hibernate @OneToOne mapping auf die Buch Seite zu Holen, Inventar-info durch den Beitritt der ISBN-Spalte. Irgendwie, Hibernate generiert die left outer join-Abfrage korrekt, aber Bestand ist null auf dem Buch-Objekt. Sein nicht faul, geladen, entweder. Ignorieren die Buchhandlung und Kette, wie mache ich eine OneToOne oder ManyToOne-und join-fetch-Inventar, wenn Bücher geholt?

class Book{
@Id
Long id

@Column
String isbn;

@Column
String title;

@OneToOne(optional = true)
@JoinColumn(name = "isbn", referencedColumnName = "isbn",insertable = false, updatable = false)
Inventory inventory;
}

class Inventory{
@Id
Long id

@Column
String chainId

@Column
String isbn

@Column
Long availableQty
}
InformationsquelleAutor Sathish | 2009-03-22
Schreibe einen Kommentar