Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 多对多复杂hibernate映射_Java_Hibernate - Fatal编程技术网

Java 多对多复杂hibernate映射

Java 多对多复杂hibernate映射,java,hibernate,Java,Hibernate,我有这样一个DB场景 基表: STUDENT (student_id, name) SPORT (sport_id, name) SPORT_SUB (sport_sub_id, name) SPORT_CATEGORY (sport_id, sport_sub_id, sport_category_id) STUDENT_SPORT_CATEGORY (student_id, sport_category_id) 多对多映射表: STUDENT (student_id, name)

我有这样一个DB场景

基表:

STUDENT (student_id, name)

SPORT (sport_id, name)

SPORT_SUB (sport_sub_id, name)
SPORT_CATEGORY (sport_id, sport_sub_id, sport_category_id) 

STUDENT_SPORT_CATEGORY (student_id, sport_category_id)
多对多映射表:

STUDENT (student_id, name)

SPORT (sport_id, name)

SPORT_SUB (sport_sub_id, name)
SPORT_CATEGORY (sport_id, sport_sub_id, sport_category_id) 

STUDENT_SPORT_CATEGORY (student_id, sport_category_id)
有谁能建议一种使用hibernate映射此场景的方法吗。我使用Hibernate工具和eclipse生成了POJO和hbm文件,并获得了成功。但是,当我试图将Sport和Sport Sub插入db时,出现了以下例外情况:

    Foreign key (FK4979B7EDEB6823:student_sport_category [sport_category_id])) must have same number of columns as the referenced primary key (sport_category [sport_ID,sport_sub_ID])

如有任何建议,将不胜感激。谢谢(受够了这个问题……)

我认为不应该使用hibernate的多2多映射。而是创建一个连接表(sporters左右,带有学生id和运动id)。
使用2个以上的一对多关系。

您可以发布您的hbm文件以及用于插入Sport和Sport Sub的代码吗?