Java 不同包中具有相同名称的两个实体

Java 不同包中具有相同名称的两个实体,java,hibernate,jpa,Java,Hibernate,Jpa,我的项目中有两个名称相同但位于不同包中的实体,这会导致异常: Use of the same entity name twice: MyEntity duplicate import: MyEntity refers to both packageOne.MyEntity and packageTwo.MyEntity (try using auto-import="false") 我试图在my persistence.xml中将属性auto import设置为false,但它没有改变任何

我的项目中有两个名称相同但位于不同包中的实体,这会导致异常:

Use of the same entity name twice: MyEntity 

duplicate import: MyEntity refers to both packageOne.MyEntity and packageTwo.MyEntity (try using auto-import="false")
我试图在my persistence.xml中将属性auto import设置为false,但它没有改变任何内容:

<property name="hibernate.auto-import"  value="false"/>

我确信您没有收到编译时错误,您一定遇到了它的部署错误。问题是,当您在部署之前将其打包到ear/war中时,这两个类都会到达服务器。当容器不知道调用哪个类时,它抛出一个异常


您不可能扩展一个类并执行操作,或者您可以在另一个类中创建一个类的实例并在它们之间添加一对一的映射。

我确信您没有遇到编译时错误,也就是您必须遇到的部署错误。问题是,当您在部署之前将其打包到ear/war中时,这两个类都会到达服务器。当容器不知道调用哪个类时,它抛出一个异常


您不可能扩展一个类并执行操作,或者您可以在另一个类中创建一个类的实例并在它们之间添加一对一的映射。

这意味着您的数据库中有两个名称相同的表,这是极不可能的


您需要使用Entity.name值,或者如果您使用的是JPA,还可以使用javax.persistence.Table注释。

这意味着您的数据库中有两个同名的表,这是不太可能的


您需要使用Entity.name值,或者如果您使用的是JPA,您也可以使用javax.persistence.Table注释。

这里之前已经回答过:这里之前已经回答过:这里:这里之前已经回答过
@Entity(name="MyEntity_One")
@Entity(name="MyEntity_Two")