Java 如何在Hibernate中设置可传递的多对一关系?

Java 如何在Hibernate中设置可传递的多对一关系?,java,database,hibernate,orm,Java,Database,Hibernate,Orm,我在为我的模型设置Hibernate时遇到了一个问题。下面您可以看到导致困难的DB部分。PK用红色标记,所有给定的关系都是多对一关系。我曾想过将airline_id和connection_id直接添加到航班表中,但这可能会导致航班包含无效数据airline_id和connection_id对,AirlineConnection中没有记录 我想将航空公司和连接存储为班机字段,但我对技术部分感到困惑。据我所知,AirlineConnection是关系Flight:Connection和Flight:

我在为我的模型设置Hibernate时遇到了一个问题。下面您可以看到导致困难的DB部分。PK用红色标记,所有给定的关系都是多对一关系。我曾想过将airline_id和connection_id直接添加到航班表中,但这可能会导致航班包含无效数据airline_id和connection_id对,AirlineConnection中没有记录

我想将航空公司和连接存储为班机字段,但我对技术部分感到困惑。据我所知,AirlineConnection是关系Flight:Connection和Flight:Airline的联接表,但是@JoinTable注释需要从联接表中存储它联接的两个表的引用,如果我错了,请更正我。 所以我的问题是,在不向DB表Flight中添加Airline_id和Connection_id字段的情况下,是否可以在Flight中存储Airline和Connection,如果不可以,原因是什么

提前谢谢


不。您应该将AirlineConnection建模为一个实体。@JBNizet Nizet实际上,这就是我所做的,但希望有其他解决方案。无论如何,谢谢你。