0
上午下面的例子中创建两个实体之间Book and BookReview
。在这本书有人这样做了OneToMany
关系:映射实体
@Entity(name="Book")
public class Book {
....
@OneToMany(cascade=CascadeType.ALL)
private List<BookReview> bookReviews;
}
,然后回上,参考书类是这样的:
@Entity(name="BookReview")
public class BookReview {
...
@ManyToOne(mappedBy="bookReviews")
private Book book;
}
但是当我尝试这个
@Entity
public class Store {
@Id
String storeName;
@OneToMany
private List<Employee> employees;
}
////////////
@Entity
public class Employee {
@Id
int employeeId;
@ManyToOne(mappedBy="employees")
private Store store;
}
@ManyToOne(mappedBy="employees")
标有一个错误说"The attribute mappedBy is undefined for the annotation type ManyToOne"
。而且它建议我使用Eclipse使用cascade,fetch,optional,targetEntity
instead.Am真糊涂here.Am之一。
你的回答是不是很有帮助。就像你在我的[其他](http://stackoverflow.com/questions/22009499/modeling-relationships-jpa-between-如果我知道“非常明确”的错误的原因,我不会问这个问题。另外,我想知道为什么这个例子在书中的作品,并给出了一个错误在我的代码中。 –
“mappedBy应该位于Collection的哪一侧”对您来说有点麻烦? Store有一个Collection字段,没有“mappedBy”(但我告诉你,这是你应该把它放在哪里,就像任何正派的JPA文档一样),Employee有“mappedBy”,但这是非法的(正如消息告诉您)。这本书,如果它真的说出你所说的话,会有严重的错误(并且Eclipse显示ManyToOne中不存在这个属性应该足以得出结论) – DataNucleus