Tek Yönlü ve Çift Yönlü ilişkilendirmeler arasındaki fark nedir?
Db'de oluşturulan tablo hepsi aynı olduğundan, bulduğum tek fark, çift yönlü varsayımların her bir tarafının diğerine atıfta bulunması ve tek yönlü olmamasıdır.
Bu Tek Yönlü bir ilişkilendirmedir
public class User {
private int id;
private String name;
@ManyToOne
@JoinColumn(
name = "groupId")
private Group group;
}
public class Group {
private int id;
private String name;
}
Çift yönlü ilişki
public class User {
private int id;
private String name;
@ManyToOne
@JoinColumn(
name = "groupId")
private Group group;
}
public class Group {
private int id;
private String name;
@OneToMany(mappedBy="group")
private List<User> users;
}
Fark, grubun kullanıcının referansını tutup tutmamasıdır.
Acaba tek fark bu mu? hangisi önerilir?