Java 如何明确指定';逆'@JPA中的一夫一妻关系
我使用JPA鉴别器获得特定的子类,如下所示(为了简单起见更改了类名) 正如您所看到的,“Type”类与Foo类存在多对一关系,但是在泛型中,如Java 如何明确指定';逆'@JPA中的一夫一妻关系,java,generics,jpa,eclipselink,Java,Generics,Jpa,Eclipselink,我使用JPA鉴别器获得特定的子类,如下所示(为了简单起见更改了类名) 正如您所看到的,“Type”类与Foo类存在多对一关系,但是在泛型中,如Set不是Set的子类型,我们不能将Foo中的“reverse”关系指定为Set类型 因此,我的Foo类使用通配符,但也确保只有类型的子类可以设置为以下类型: @Entity @Table(name="FOO") public class Foo { //bi-directional one-to-many association to Type
Set
不是Set
的子类型,我们不能将Foo中的“reverse”关系指定为Set类型代码>
因此,我的Foo类使用通配符,但也确保只有类型的子类可以设置为以下类型:
@Entity
@Table(name="FOO")
public class Foo {
//bi-directional one-to-many association to Type
@OneToMany(mappedBy="foo")
Set<?> types;
public Set<?> getTypes() {
return types;
}
public void setTypes(Set<? extends Type> types) {
this.types = types;
}
}
@实体
@表(name=“FOO”)
公开课Foo{
//双向一对多关联到类型
@OneToMany(mappedBy=“foo”)
设置类型;
公共集getTypes(){
返回类型;
}
public void setTypes(SetOneToMany注释可以指定targetEntity:
@OneToMany(mappedBy="foo", targetEntity = Type.class)
Set<?> types;
@OneToMany(mappedBy=“foo”,targetEntity=Type.class)
设置类型;
当泛型可用于定义类型,但在您的情况下是必需的时,这是可选的
@OneToMany(mappedBy="foo", targetEntity = Type.class)
Set<?> types;