Java JPA、OneToMany和ManyToOne

Java JPA、OneToMany和ManyToOne,java,sql,jpa,orm,Java,Sql,Jpa,Orm,我正在使用JPA从DB查询数据。我得到: @Entity @Table(name = "supporter_1") public class Supporter{ @Id ... @OneToMany(mappedBy = "supporter") List<SubSupporter> subSuporter= new ArrayList<SuBSupporter>(); 当我试图获得所有支持者并在循环中联系他们时,一切正常,但在尝试访

我正在使用JPA从DB查询数据。我得到:

@Entity
@Table(name = "supporter_1")
public class Supporter{

    @Id
    ...
    @OneToMany(mappedBy = "supporter")
    List<SubSupporter> subSuporter= new ArrayList<SuBSupporter>();
当我试图获得所有支持者并在循环中联系他们时,一切正常,但在尝试访问子支持者列表后,我得到一个错误:

[EL Warning]: 2016-07-12 11:29:45.282--ServerSession(180353207)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.5.0.v20130507-3faac2b): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.microsoft.sqlserver.jdbc.SQLServerException: The multi-part identifier "supporter_1.id" could not be bound.
Error Code: 4104
Call: SELECT ID, coulmn_name, supporter_1.id FROM supporter_2 WHERE (supporter_1.id = ?)
    bind => [1 parameter bound]
Query: ReadAllQuery(name="subSupporter" referenceClass=SubSupporter sql="SELECT ID, coulmn_name, supporter_1.id FROM supporter_2 WHERE (supporter_1.id = ?)")
我知道选择状态是错误的,我不知道为什么


PS我正在使用eclipse链接

您不能在列名称
supporter_1.id
中有点。将其更改为
supporter\u 1\u id

是否重建,并重新部署您的应用程序现在我正在以Java SE应用程序I main类的形式运行它以进行测试您确定它与现在我收到的错误消息完全相同:内部异常:com.microsoft.sqlserver.jdbc.SQLServerException:无效列名'supporter_1_id'@Iwnow更改名称后,如果不更改,您必须更改表jpaIs自动生成这是一个现有数据库还是从实体生成的数据库?它是带有数据的现有数据库,不从实体生成。如果它是“现有数据库”,则发布架构定义,并解释是否确实有一个名为“supporter_1.id”的列joincolumn注释中的名称必须是“supporter_2”中外键字段的名称。
[EL Warning]: 2016-07-12 11:29:45.282--ServerSession(180353207)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.5.0.v20130507-3faac2b): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.microsoft.sqlserver.jdbc.SQLServerException: The multi-part identifier "supporter_1.id" could not be bound.
Error Code: 4104
Call: SELECT ID, coulmn_name, supporter_1.id FROM supporter_2 WHERE (supporter_1.id = ?)
    bind => [1 parameter bound]
Query: ReadAllQuery(name="subSupporter" referenceClass=SubSupporter sql="SELECT ID, coulmn_name, supporter_1.id FROM supporter_2 WHERE (supporter_1.id = ?)")