Spring JPA Enitiy,其中一列与其他两个实体的关系连接

Spring JPA Enitiy,其中一列与其他两个实体的关系连接,spring,hibernate,jpa,spring-boot,Spring,Hibernate,Jpa,Spring Boot,目前,我正在尝试实现几个实体,其中一个实体在数据库中有一列,可以表示其他两个实体 为了清楚起见,这些是我正在谈论的表格,我可以不更改它们 图像表: Users表相当大,但其中的一部分应该足够了: 和页数表: 其逻辑是,图像可以由用户或页面拥有。它的所有者由position_id和path列指示。所以路径可以是用户或页面,位置_id是用户/页面的id 如何在JPA中实现position_id与用户和页面之间的多通关系 我想象它看起来像这样: @ManyToOne(fetch=FetchTyp

目前,我正在尝试实现几个实体,其中一个实体在数据库中有一列,可以表示其他两个实体

为了清楚起见,这些是我正在谈论的表格,我可以更改它们

图像表:

Users表相当大,但其中的一部分应该足够了:

和页数表:

其逻辑是,图像可以由用户或页面拥有。它的所有者由position_id和path列指示。所以路径可以是用户或页面,位置_id是用户/页面的id

如何在JPA中实现position_id与用户和页面之间的多通关系

我想象它看起来像这样:

@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name="position_id", insertable = false, updatable = false)
@Where(clause="path='pages'")
private Page page;

@ManyToOne(fetch=FetchType.EAGER)
@JoinColumn(name="position_id", insertable = false, updatable = false)
@Where(clause="path='users'")
private User user;
但是,这将返回用户或页面的所有图像实例,而不考虑其路径。此外,当我试图根据图像实体的路径值过滤该值时,它会给我LazyInitializationException。 如何着手解决这个问题