2
我的問題可能很簡單,我無法找到答案。JPA:從實體,查詢其他實體之間沒有關係映射
我想要做這樣的事情:
@Entity
public class EntityA {
@Transient
@SomeQueryAnnotation(query="select b from EntityB where b.id=1")
private EntityB entityB;
}
EntityB是一種靜態的資源。它不應該保存回數據庫。實體之間也沒有映射。
[編輯]
,你認爲這是好的,當我這樣做:
@Entity
public class EntityA {
private EntityB getEntityB() {
ServiceRemote service = (ServiceRemote)context.lookup("ejb:ServiceRemote");
return service.getEntityB();
}
}
比應該還是可以使用遠程處理,因爲連接可以在每個配置客戶端的jndi.properties文件。當您需要從您的實體訪問數據庫時,您最喜歡的方法是什麼?
如果兩個實體之間沒有關係,爲什麼要讓實體B成爲實體A的一部分,而不是單獨獲取它?這種氣味或者像設計糟糕的傳統模式或者有問題的設計決定。 – kostja
好問題。 EntityA就像一個插件並擴展了SuperEntity。但是爲了完成它的工作,它需要檢索更多的數據。這種情況更是一個例外,然後是這樣做的典型方式。 – hidehawk
嗯,我懷疑JPA以這種方式彎曲,但我很好奇。 – kostja