Spring boot JoinColumn/JoinTable始终为空为什么*?
大家好,我有两个实体和用户角色。一个用户可以有很多角色,所以我做了一个Spring boot JoinColumn/JoinTable始终为空为什么*?,spring-boot,rest,Spring Boot,Rest,大家好,我有两个实体和用户角色。一个用户可以有很多角色,所以我做了一个 @Entity @Table(name="ROLES") public class Roles { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "role_id") private Long id; @Column(name = "name") p
@Entity
@Table(name="ROLES")
public class Roles {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "role_id")
private Long id;
@Column(name = "name")
private String name;
@ManyToOne(fetch= FetchType.LAZY)
@JoinTable(name = "USER_ROLES",
joinColumns = {@JoinColumn(name = "USER_FK")},
inverseJoinColumns = {@JoinColumn(name = "ROLES_FK")}
)
private User user;
}
以及一个用户类,该类将OneToMany关系引用到角色
@Entity
@Table(name = "USER")
public class User {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id")
private long user_id;
@Column(name = "first_name")
private String firstName;
@Column(name = "last_name")
private String lastName;
@Column(name = "email_id", unique=true, nullable = false)
private String emailId;
@Column(name = "created_at")
private String created_at;
@OneToMany(mappedBy = "user",cascade = CascadeType.MERGE, orphanRemoval = true,fetch=FetchType.LAZY)
private Set<Roles> roles = new HashSet<>();
public User() {
}
public User(String firstName, String lastName, String emailId) {
super();
this.firstName = firstName;
this.lastName = lastName;
this.emailId = emailId;
}
}
}
用户表已正确填充,但用户角色表为空?那我做错了什么?有什么想法吗=
{
"firstName":"Isic1",
"lastName":"edib11",
"emailId":"edib.isic@gmail.com",
"roles":[{"name":"write"}, {"name":"read"}]