您
@JoinColumn对选民和个人使用相同的名称。更改
@JoinColumn("personID")为关联人和
@JoinColumn("voterID")关联选民,一切都很好。
附带说明一下,因为您用
domain-driven-design… 标记了它。如果像这样实现,则投票类将具有更多DDD样式:
@Id@GeneratedValue(strategy = GenerationType.AUTO)@Column(name = "ID")private Integer ID;@ManyToOne@JoinColumn(name = "voterID")private Person voter;@ManyToOne@JoinColumn(name = "votedForID")private Person votedFor;@Column(name = "vote")private Boolean vote;public void cast(Person voter, Person votedFor, boolean vote) { // Maybe assert that this vote has not already been casted this.voter = voter; this.votedFor = votedFor; this.vote = vote;}public Integer getID() { return ID;}public Boolean isUpVote() { return vote;}public Boolean isDownVote() { return !vote;}public Person getVoter() { return voter;}public Person getVotedFor() { return votedFor;}
只是一个例子,不知道我是否了解您的
vote布尔值的含义以表示赞成/反对表决。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)