단방향 매핑이 가장 중요하다. 양방향이 필요하면 그 때 객체에 List를 넣어주면 된다. (비즈니스 로직상 필요하다면 양방향을 넣어주기)
나중에 실무에서는 JPQL을 작성하게 되는데 연관관계의 주인이 아니면 할 수 있는게 조회밖에 없기 때문에 편의를 위해 양방향 연관관계를 넣는다. 복잡한 조회 쿼리에서 양방향 매핑을 하고 싶은 경우가 발생합니다. team과 member를 fetch join으로 한번에 조회하고 싶은 경우에는 양방향이 필요하다.
우리 프로젝트도 처음에는 단방향으로 나름 잘 설계했다고 생각했고 양방향이 필요하다고 느껴진 시점에 List를 추가해줬는데 뭐가 문제인지 아직도 잘 모르겠다. (외래키 제약 조건 문제인 것 같은데 나는 관계형 데이터베이스에 관한 공부도 필요한 것 같다.) 이제 JPA에 대해 제대로 공부하기 시작했으니 내일 다시 코드를 보면서 확인해야겠다.
이유는 모르겠는데 어제부터 너무 피곤해서 집중도 제대로 못하고 목표한 양을 끝내지 못했다. 운동부족이라 체력이 바닥난 것 같다.
아까 팀원분께서 노션으로 공부한 내용, 트러블 슈팅 등을 정리하신 걸 보여주셨는데 같은 프로젝트를 진행했는데 나는 정말 아무것도 정리하지 않은 것 같아서 반성하게 됐다. 원래 노션에도 조금씩 정리하고 블로그에도 정리해서 올리려고 했는데 주말로 미루고, 그 다음주로 미루다가 벌써 최종 발표날이 다가왔다. 굳이 잘 다듬어서 정리하지 않더라도 기록하는 습관이 중요한 것 같다. (이것저것 찾아보고 며칠동안 열심히 구현했는데 제대로 기록을 안해두니 벌써 기억이 잘 안 난다.🙁)