小编Ben*_*ëls的帖子

超类的JPA OneToMany协会

我正在尝试映射超类LendingLine和子类Line和BlockLine的继承。LendingLine与Lending有ManyToOne关联。

当我尝试从数据库获取LendingLines而没有继承时,它工作正常。该协会也起作用。但是当我添加继承时,Lending中的lendingLines为空。我也无法通过继承从数据库获得任何LendingLines。

有谁能够帮助我?

(对不起,不好的解释)

提前致谢!

LendingLine:

@Entity
@Inheritance(strategy=InheritanceType.SINGLE_TABLE)
@DiscriminatorColumn(name="TYPE")
@DiscriminatorValue(value="Line")
@Table(name = "LendingLine")
public class LendingLine {
...
public LendingLine(){}
@ManyToOne(cascade = CascadeType.ALL,fetch = FetchType.EAGER, targetEntity=Lending.class)
@JoinColumn(name = "LendingId")
private Lending lending;
...
Run Code Online (Sandbox Code Playgroud)

借出:

@Entity
@Table(name = "Lending")
public class Lending {
...
public Lending(){}

    @OneToMany(cascade = CascadeType.ALL,fetch = FetchType.EAGER, mappedBy = "lending")
private List<LendingLine> lendingLines;
...
Run Code Online (Sandbox Code Playgroud)

BlockDate:

@Entity
@DiscriminatorValue(value = "BlockLine")
public class BlockLine extends LendingLine {
public BlockLine(){
}
}
Run Code Online (Sandbox Code Playgroud)

LendingLineRepository:

此类仅从db读取,因为db是由另一个将对象添加到db的应用程序(C#)创建的。

public class LendingLineRepository extends JpaUtil implement …
Run Code Online (Sandbox Code Playgroud)

java inheritance jpa many-to-one

3
推荐指数
1
解决办法
3665
查看次数

标签 统计

inheritance ×1

java ×1

jpa ×1

many-to-one ×1