feat : Team 엔티티 및 Member 엔티티와 연관관계 설정 추가

This commit is contained in:
배재홍
2021-08-26 22:49:48 +09:00
parent dfde14c6de
commit 68a0f8d31c
3 changed files with 45 additions and 13 deletions

View File

@@ -1,12 +1,12 @@
package colt.springboot.test.domain.member.model;
import lombok.Builder;
import lombok.*;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.*;
@Getter
@Setter
@AllArgsConstructor
@Builder
@Entity
public class Member {
@@ -18,6 +18,11 @@ public class Member {
private String name;
// @ManyToOne(fetch = FetchType.LAZY)
@ManyToOne(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@JoinColumn(name = "teamId")
private Team team;
protected Member() {
}
@@ -44,12 +49,4 @@ public class Member {
throw new IllegalArgumentException("멤버의 이름은 5글자 미만이어야 합니다.");
}
}
public Long getId() {
return id;
}
public String getName() {
return name;
}
}

View File

@@ -0,0 +1,28 @@
package colt.springboot.test.domain.member.model;
import lombok.*;
import javax.persistence.*;
import java.util.ArrayList;
import java.util.List;
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
@Builder
@Entity
public class Team {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String name;
@Builder.Default
// @OneToMany(fetch = FetchType.LAZY, orphanRemoval = true)
// @OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL)
@OneToMany(fetch = FetchType.LAZY, cascade = CascadeType.ALL, orphanRemoval = true)
private List<Member> members = new ArrayList<>();
}

View File

@@ -0,0 +1,7 @@
package colt.springboot.test.domain.member.repository;
import colt.springboot.test.domain.member.model.Team;
import org.springframework.data.jpa.repository.JpaRepository;
public interface TeamRepository extends JpaRepository<Team, Long> {
}