lv2 과제는 결국 완성하지 못했다.. 그래도 꼭 완성을 할 것이다.!!!!!!!
일단 코드리뷰 때 얻은 정보를 정리하겠다.
그래도 코드리뷰를 보니까 뭔가 할 수 있을 것 같은 느낌이 든다..ㅎ
변수명
- 회원가입은
signup
, 로그인은 login
으로 했는데 통일하는게 좋다. -> signUp
과 signIn
API URL
데이터 넘기고 받고
- 객체를 그대로 넘기는 것은 지양하고 필요한 것만 넘기는 게 좋다.
- dto에 필요한 정보를 넣고 dto를 방어막으로 이용하는 것
- 그래야 의존성이 낮아진다.
객체 연관관계
- jpa는 우리가 작성한 코드를 기준으로 db의 구조를 유추함
- annotation을 통해 우리가 명시를 해줘야 jpa가 올바르게 유추할 수 있다.
- 게시글에 user 객체를 넣어주는 이유는 User에 만든 기능을 재사용하기 위한 측면도 있음
- 실제 사용과 정말 필요한가를 고민하고 연결
- ManyToOne
- fetchType = EAGER
- n+1의 문제. 전체 사이즈만큼 쿼리가 날라가 계속 날라가
- =LAZY
- 실제로 사용하기 전에는 쿼리가 날라가지 않아서 db접근을 최소화할 수 있음
회원권한
관리자와 회원의 controller API mapping을 분리해서 처리하는 방법이 있다. 인증/인가를 서비스와 분리시켜!
- 그렇게 되면 service에서는 해당 함수의 역할만 하면 된다.
컴퓨터는 멍청하지만 거짓말하지 않는다.
공부 할 키워드
- RequestBody & RequestParam
- DDD