java - 目标实体未定义与OneToMany关系的错误

标签 java one-to-many javax.persistence

我正在按照this tutorial使JPA与EJB3.0一起使用

package example.pojo;

@Entity
public class Cat {

    private String name;
    private Date birthDate;
    private int id;
    private Cat mother;
    private List kittens;

    public Cat() {
        super();
        setKittens(new ArrayList());
    }

    @ManyToOne(optional = true)
    public Cat getMother() {
        return mother;
    }

    @OneToMany(cascade = CascadeType.ALL, mappedBy = "mother", targetEntity = example.pojo.Cat)
    public List getKittens() {
        return kittens;
    }

    @Id @GeneratedValue(strategy = GenerationType.AUTO)
    public int getId() {
        return id;
    }
}


我想在同一实体的两个属性之间建立关系,但是映射在这里不起作用。请向我解释我做错了什么以及如何解决此问题。

最佳答案

您必须将该实体放在persistence.xmlpersistence-unit标签区域中,例如:

<persistence-unit>
  <class>samplePackage.Cat</class>
</persistence-unit>


添加时,它会被修复

关于java - 目标实体未定义与OneToMany关系的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33476302/

相关文章:

Java:如何从字符串中抓取每行

java - "parent"表上的 Oracle rownum

Java类未找到异常

java - 我可以在 JTabbedPane 中将一些选项卡放在左侧,将其他选项卡放在右侧吗?

java - 如何在 JPA 中正确关联具有多个键的表

python - Django一对多关系: number of objects

hibernate - javax.persistence.criteria 和 org.hibernate.criterion 包之间有什么区别?

mysql - 需要将多对一值组合成单个结果的 SQL 查询

java - 何时使用@Embedded 和@Embeddable?