JPA 多对多关系 "JoinColumn cannot be resolved to a type" 错误
JPA ManytoMany Relationship "JoinColumn cannot be resolved to a type" error
我正在使用 Spring 启动并尝试在用户和技能之间实现多对多关系。我有一个包含 user_id 和 skill_id 列的 table users_skills。尝试实现关系时,我在 STS 中的 @JoinColumn 注释中不断收到 "JoinColumn cannot be resolved to a type" 错误。下面是我的用户 class
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
private String email;
private String firstName;
private String lastName;
private List<Skill> skills = new ArrayList<Skill>();
protected User() {}
public User(String email,String firstName, String lastName) {
this.email = email;
this.firstName = firstName;
this.lastName = lastName;
}
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id ;
}
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email ;
}
public String getFirstName() {
return this.firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName ;
}
public String getLastName() {
return this.lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName ;
}
@ManyToMany
@JoinTable(name="users_skills",
joinColumns={@JoinColumn(name="user_id")},
inverseJoinColumns={@JoinColumn(name="skill_id")})
public List<Skill> getSkills(){
return skills;
}
public void setSkills(List<Skill> skills) {
this.skills = skills ;
}
}
把这个写在你的 class
的开头
import javax.persistence.JoinColumn;
有时 eclipse 不显示 link 以在上下文菜单中导入它,但它在那里。希望对大家有所帮助。
我正在使用 Spring 启动并尝试在用户和技能之间实现多对多关系。我有一个包含 user_id 和 skill_id 列的 table users_skills。尝试实现关系时,我在 STS 中的 @JoinColumn 注释中不断收到 "JoinColumn cannot be resolved to a type" 错误。下面是我的用户 class
@Entity
@Table(name = "users")
public class User {
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private long id;
private String email;
private String firstName;
private String lastName;
private List<Skill> skills = new ArrayList<Skill>();
protected User() {}
public User(String email,String firstName, String lastName) {
this.email = email;
this.firstName = firstName;
this.lastName = lastName;
}
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id ;
}
public String getEmail() {
return this.email;
}
public void setEmail(String email) {
this.email = email ;
}
public String getFirstName() {
return this.firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName ;
}
public String getLastName() {
return this.lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName ;
}
@ManyToMany
@JoinTable(name="users_skills",
joinColumns={@JoinColumn(name="user_id")},
inverseJoinColumns={@JoinColumn(name="skill_id")})
public List<Skill> getSkills(){
return skills;
}
public void setSkills(List<Skill> skills) {
this.skills = skills ;
}
}
把这个写在你的 class
的开头import javax.persistence.JoinColumn;
有时 eclipse 不显示 link 以在上下文菜单中导入它,但它在那里。希望对大家有所帮助。