我想了解注释MapKey和MapKeyColumn,我发现它们令人困惑。我读an article,使我更糊涂了(确定部)映射一对多映射关键是一个int
我有一个int领域的实体,它不是主键:
public class Connections{
...
public final int getConnectionId() {
return this.connectionId;
}
@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "FK_StartpointTNA")
public final Endpoint getStartpoint() {
return this.startpoint;
}
...
}
,并在另一边,我有
public class Endpoint{
...
@OneToMany(mappedBy = "startpoint", fetch = FetchType.LAZY, cascade = { javax.persistence.CascadeType.REMOVE })
@MapKeyColumn(name = "connectionId")
public Map<Integer, Connections> getConnections() {
return this.connections;
}
....
}
我不知道如何解决这个问题。我不断收到:org.apache.openjpa.persistence.ArgumentException:“连接”声明它由“startpoint”映射,但这不是相关类型的字段。
这是什么映射的正确方法?
好。就像我打开的杰拉所说的那样。我已经知道,;)。该死的迁移...好奇,它在休眠下工作正常 – santiagozky 2012-04-02 12:25:47