未知实体,因为属性是一个接口

时间:2013-07-11 19:34:49

标签: java java-ee jpa

我创建了一个User界面。我有另一个名为FinanceReport的类,它具有类似private User user的用户属性。我使用JPA,因此我使用必要的属性注释了FinanceReport类。我现在有User接口的一个实现,名为FinanceUser

现在,由于我使用User作为属性,因此无法部署到服务器。它告诉我它是一个未知的实体......这是正确的,界面没有@Entity等注释。

我为用户相关的类有一个自己的Maven项目,然后其他Maven项目使用接口而不是特定的实现。

2 个答案:

答案 0 :(得分:1)

如果您不需要保留该属性,请使用@Transient对其进行注释,如果您确实需要保留它,则需要使用@Entity等正确注释用户。此外,我不是确定你是否可以使用接口来实现这一点,因为JPA提供者必须足够智能以检测接口的实现

答案 1 :(得分:0)

如果您需要映射界面关系,请参阅,

http://en.wikibooks.org/wiki/Java_Persistence/Advanced_Topics#Interfaces