ich keinen Unterschied in dem Schema einer Viele-zu-Eins-Beziehung vs einer OneToOne Beziehung sehen:Hibernate ManyToOne vs OneToOne
@Entity
public class Order {
@ManyToOne
@JoinColumn(nullable = false)
private Address address;
vs
@Entity
public class Order {
@OneToOne
@JoinColumn(nullable = false)
private Address address;
Gibt es einen Unterschied?
Also sollte es mir gut gehen, zwischen den beiden Mappings zu wechseln? –
Was meinst du mit "zwischen den beiden Mappings wechseln"? Wenn Sie ein bestehendes Datenbankschema haben und sich dafür entscheiden, die Mapping-Annotation in Ihrer Anwendung zu ändern, können Sie dies tun, ohne das Schema zu ändern (von @OneToOne zu @ManyToOne). Auf andere Weise können Sie es auch tun, aber Sie können Probleme mit Daten haben. – paulek
Für jeden, der pauleks Beitrag in der Zukunft liest: Ihre Berechtigungen müssen _just so_ sein, um diesen Fehler zu bekommen. Wenn Sie nur unidirektionale Beziehungen haben, wird dieser Fehler nicht angezeigt. Wenn Sie bidirektionale Beziehungen haben, wird nur ein Select auf Adressen mit Join, der die Aufträge abruft, diesen Fehler erzeugen. –