使用Spring Data JPA进行多对多的映射和保存问题

时间:2015-09-13 20:35:51

标签: java spring hibernate jpa spring-data

我有一个数据库架构,我必须将多个关系映射到多个关系

***** Tables **********

person
--------
id - int 
name - varchar

color
-------------
id - int 
color - varchar

person_color
------------
person_id - int (matches an id from person)
color_id - int (matches an id from color)

我已将上述方案转换为JPA @Entities为

@Entity
public class Person {


    @Id
    @GeneratedValue
    private Integer id;

    private String name;

    @ManyToMany(cascade = {CascadeType.ALL})
    private List<Color> colors;
   /// setters getters are there
}

@Entity
public class Color {


    @Id
    @GeneratedValue
    private Integer id;

    private String color;

    @ManyToMany(cascade = {CascadeType.ALL})
    private List<Person> person;
   /// setters getters are there
}

上面的代码创建了四个表

person
person_color
color
color_person

但我想只有三张桌子

 person
    person_color
    color

上面的代码出了什么问题,想要将数据保存到数据库的任何资源或链接到使用JPA保存数据的好例子的多个关系。

0 个答案:

没有答案