2
私はJPAの世界では新しく、次の問題があります。JPA @sequenceGenerate @OneToMany
私は、生成されたclassIdを持つクラスを持っています。このクラスには学生のリストがあり、この列の1つ(学生の場合)がclassIdです。
私はこれを実装しましたが、StudentテーブルのclassIdはデータベース内でnullと表示されます(それ以外は問題ありません)。
誰でも手助けできますか?
ありがとうございます。
これはコードです。
@Entity
@Table(name = "class")
public class Class implements Serializable {
private Long classId;
private List<Student> student;
@Id
@SequenceGenerator(name = "class_id_gen", sequenceName = "seq_class_id", allocationSize = 1)
@GeneratedValue(strategy = GenerationType.SEQUENCE,generator = "class_id_gen")
@Column(name = "class_id", unique = true, nullable = false)
public Long getClassId() {
return classId;
}
@OneToMany(mappedBy = "class", cascade = CascadeType.ALL)
public List<Student> getStudent() {
return this.Student;
}
}
@Entity
@Table(name = "student")
public class Student implements Serializable {
/**
* The Class.
*/
private Class class;
@ManyToOne()
@JoinColumn(name = "class_id")
public Class getClass() {
return this.class;
}
}
Main:
Class class = null;
UserTransaction.begin();
class = new Class();
class.setStudents(ListOfStudents);
EntityManager.persist(class);
UserTransaction.commit();
おかげで多くのことを。それは動作します:D – JMarques