Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/330.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 在derby示例数据库中创建关系_Java_Sql_Hibernate_Jpa_Derby - Fatal编程技术网

Java 在derby示例数据库中创建关系

Java 在derby示例数据库中创建关系,java,sql,hibernate,jpa,derby,Java,Sql,Hibernate,Jpa,Derby,我正在Netbeans中使用derby示例数据库。我想创建具有一对多关系的表 我有课程和学生。课程表中应该有所有参加本课程的学生,学生表中应该有他正在参加的课程。到目前为止,我创造了 CREATE TABLE Course ( id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), name VARCHAR(50) NOT NULL, CONSTRAINT primary_key PRIMA

我正在Netbeans中使用derby示例数据库。我想创建具有一对多关系的表

我有
课程
学生
。课程表中应该有所有参加本课程的学生,学生表中应该有他正在参加的课程。到目前为止,我创造了

CREATE TABLE Course
(
id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
name VARCHAR(50) NOT NULL,
CONSTRAINT primary_key PRIMARY KEY (id)
);

CREATE TABLE Student
(
id INTEGER NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1),
name VARCHAR(50) NOT NULL,
surname VARCHAR(50) NOT NULL,
faculty VARCHAR(50) NOT NULL,
course_id INTEGER NOT NULL,
CONSTRAINT student_pk PRIMARY KEY (id),
CONSTRAINT student_fk  FOREIGN KEY (course_id) REFERENCES course
); 
但是,当我使用
Hibernate
映射此对象时,student对象没有作为整个对象的course属性,只有作为整数的id

另外,如何为课程表创建多对一关系


谢谢你的帮助

您的关系映射应该如下所示:

@Entity
class Course{

   @OneToMany(mappedBy = "course")
   private Set<Student> students;

}

@Entity
class Student

   @ManyToOne
   @JoinColumn(name = "course_id")
   private Course course;

}
@实体
班级课程{
@OneToMany(mappedBy=“课程”)
私立学校学生;
}
@实体
班级学生
@许多酮
@JoinColumn(name=“课程id”)
私人课程;
}

所以我应该执行上述sql,创建反向hibernate文件,生成映射文件并将其添加到POJO类中?当您使用注释时,您不需要hbm映射文件。。您只需指定packagesToScan hibernate属性。除非无法使用批注。。是这样吗?您是否希望在这里从hibernate在启动时创建数据库?使用hbm2.ddl设置?我正在使用netbeans中的derby创建数据库,我正在休眠以映射表并使用它进行操作。好的,太好了。。那么您在检索数据时仍然有问题吗?