Spring Data JPA OneToMany中的级联保存

来源:互联网 发布:波段选股王炒股软件 编辑:程序博客网 时间:2024/05/21 17:15

怎么在保存主表的同时将附表也保存

1 需要给附表对象设置关联的主表,然后再把附表对象设置给主表,最后save主表。


在service中

public void add(Student s){    Set<Course> courses = s.getCourses();    courses.forEach(c->{
        //关键        c.setStudent(s);    });   studentRepositiry.save(s);}
public class Course {    @Id    @GeneratedValue(strategy = GenerationType.IDENTITY)    private Long id;    @Column(name = "name")    private String name;   @ManyToOne   @JoinColumn(name = "student_id")    private Student student;
   //getter setter 省略   }
public class Student implements Serializable{    @Id    @GeneratedValue(strategy = GenerationType.IDENTITY)    private Long id;    @Column(name = "name")    private String name;    @OneToMany(cascade = CascadeType.ALL)    @JoinTable(name="student_course",joinColumns={@JoinColumn(name="student_id")},            inverseJoinColumns={@JoinColumn(name="course_id")})    private Set<Course> courses;   //getter setter 省略}



原创粉丝点击