B varlığına sahip A varlığına sahibim ve B, AOToTone çift yönlü ilişkisiyle A'ya sahiptir. ŞimdiHazırda bekletme için iki sorgusu neden bir @OneToOne iki yönlü derleme?
i A kayıtları findall zaman, B böyle bir şey katılmak sol dış birleşim ile iki sorgu gerçekleştirmek hazırda bekletme:
select a.id, a.id_b, a.field1, b.id, b.field1 from A as a, B as b left outer join b ON b.id=a.id_b;
select a.id, a.id_b, a.field1, b.id, b.field1 from A as a, B as b left outer join b ON b.id=a.id_b WHERE b.id=?
İlk sorgu yük A ve B alanları ve Tamam, ama neden gerçekleştirmek A yeniden yüklemek için ikinci sorgu? Bu sorgunun B içeriğinin B olarak yükleneceğini düşünüyorum, ancak bu A, B'yi içeren A olan bir obezdir. Bu nedenle, ilk sorguyla zaten yüklü, doğru değil mi?
- DÜZENLEME -
A işletmesi:
@Entity
public class A implements Serializable{
// id and other ecc ecc
@OneToOne
@JoinColumn(name="id_b")
B b;
}
Varlık B:
@Entity
public class B implements Serializable{
// id and other ecc ecc
@OneToOne(mappedBy="b")
A a;
}
Bu bir ihtiyaç iki sorgular durum ve findAll olduğunu .. . niye ya?
Teşekkür ederim! Çok kapsamlı! – blow