2011-07-20 26 views
0

我有一個EntityManager和我使用方法find(Entity.class,primaryKey,mapProperty)搜索。問題是我設置了這個地圖?實體管理器查找()與地圖屬性

@Entity 
public class Entity{ 
    @Id 
    private int id; 

    @ManyToOne 
    private Property prop; 

    //setter e getter method 
    //.. 
} 

概括地說,我需要找到一個有外國key.Or一個特定的值是它更好地使用CriteriaAPI所有元組,如果你喜歡?

回答

0

最好使用Criteria API或JP QL。你可能會誤解第三個參數的含義。這不是你實體中的某張地圖。它包含「標準和供應商特定的屬性和提示」,如Javadocs中所解釋的。如果你沒有給予的話,你不要設置它。那麼最好使用find(entityClass,primaryKey),但正如你所看到的,它只提供了用主鍵查詢的可能性。