CoCo, 코드 리뷰

프로젝트

목록 보기
2/39

Member.java

  • @Id : 직접 엔티티 기본키 필드에 직접 값을 넣어 등록
  • @GeneratedValue : 자동 할당
    ⇒ PK를 나타내기 위해 @Id 어노테이션을 사용하며, 생성 전략을 정의하기 위해 @GeneratedValue 를 사용

    https://yoonbing9.tistory.com/19


: 얘네는 왜 column으로 안넣어주지?
column은 nullable = false 적용해주기 위해서 넣은 것.


@Enumerated : 자바의 enum 타입을 엔티티 클래스의 속성으로 이용가능


: 양방향을 안하면 같이 삭제안되고 따로 할 수 있는 건가
cascade = CascadeType.REMOVE 의 역할이였다.

  • Cascade ? 영속성 전이. 부모 엔티티가 영속화될 때 자식 엔티티도 같이 영속화되고, 부모 엔티티가 삭제될 때 자식 엔티티도 삭제되는 등 특정 엔티티를 영속 상태로 만들 때 연관된 엔티티도 함께 영속 상태로 전이되는 것을 의미
  • CascadeType.ALL: 모든 Cascade를 적용
  • CascadeType.PERSIST: 엔티티를 영속화할 때, 연관된 엔티티도 함께 유지
  • CascadeType.MERGE: 엔티티 상태를 병합(Merge)할 때, 연관된 엔티티도 모두 병합
  • CascadeType.REMOVE: 엔티티를 제거할 때, 연관된 엔티티도 모두 제거
  • CascadeType.DETACH: 부모 엔티티를 detach() 수행하면, 연관 엔티티도 detach()상태가 되어 변경 사항 반영 X
  • CascadeType.REFRESH: 상위 엔티티를 새로고침(Refresh)할 때, 연관된 엔티티도 모두 새로고침
    https://zzang9ha.tistory.com/350
  • @Builder.Default? 특정 속성에 특정값으로 초기화(설정)하고 싶을 때 사용


편의 메소드 설명 참고!


↳ Iterator를 안쓰는 이유? 그냥..? 이것도 가능!

profile
백엔드를 공부하고 있습니다.

0개의 댓글