@Entity
@Table(name="MEMBER", uniqueConstraints = {@UniqueConstraint(name = "NAME_AGE_UNIQUE", columnNames = {"MEMBER_ID"})})
@Getter @Setter
public class Member {
@Id
@Column(name = "MEMBER_ID")
private String id;
private String username;
@ManyToOne
@JoinColumn(name = "TEAM_ID")
private Team team;
public Member(String member1, String username) {
this.id = member1;
this.username = username;
}
public Member(){}
}
@Entity
@Getter @Setter
public class Team {
@Id
@Column(name = "TEAM_ID")
private String id;
private String name;
@OneToMany(mappedBy = "team")
private List<Member> members = new ArrayList<>();
public Team(String id, String name) {
this.id = id;
this.name = name;
}
public void addMember(Member member) {
}
public Team(){}
}
team.getMembers().add(member); 하게 되면 null이 들어가게 됨.
이럴땐 연관관계의 주인인 member에서 관계를 설정하거나 아래와 같이 team의 메소드를 추가해준 후 사용
public void addMember(Member member) {
member.setTeam(this);
getMembers().add(member);
}