주특기 심화 TIL 4 - 코멘트를 추가해보자

LIHA·2023년 2월 23일
0

항해99

목록 보기
49/54
post-thumbnail

아니 이거 JDK 어떻게 변경하더라?

  1. Settings의 Build -> Gradle 가서 JDK 버전 변경
  2. Project Structure -> Project settings -> Project 가면 JDK 버전 설정 가능

매니저님께 질문드릴 내용

  • SignupRequestDto 에서 @NotEmpty와 @NotBlank가 중복되는 부분이 있는데, 맨 위에다 걸어도 될지?
    adminToken 부분에 영향이 없을지 걱정.

  • 관리자 인증에 쓰이는 토큰, 내가 새로 만들수는 없는지?

매니저님이 알려주신 내용

  • 빌더로 초기화를 하느냐, 생성자로 초기화를 하느냐의 차이일 뿐! 빌더는 디자인패턴이야. 꼭 쓸 필요는 없어.

  • 빌더도 단점이 있어. 생성자는 빠진 것을 알려주는데 빌더는 알려주지 않아.

  • User에 Setter는 가능하면 안쓰는게 좋다. 차라리 Set Method를 따로 만들어주자.

저장공간이 1바이트와 2바이트가 있는데, 디폴트가 왜 1바이트고 한계가 왜 2바이트인지 알아보면 좋다.

  • Optional로 받던걸 CommentRepository 가서 Comment FindById(); 하면 orElseThrow 안해줘도 된다. 그냥 쓸수 있음.

    @Secured("ROLE_ADMIN")
    @PutMapping("/comment/{id}")
    public CommentResponseDto adminUpdateCmt(@PathVariable Long id, @RequestBody CommentRequestDto commentRequestDto, @AuthenticationPrincipal UserDetailsImpl userDetails){
        return commentService.update(userDetails.getUser(), id, commentRequestDto);
    }

    @Secured("ROLE_ADMIN")
    @DeleteMapping("/comment/{id}")
    public SuccessResponseDto adminDeleteCmt(@PathVariable Long id, @AuthenticationPrincipal UserDetailsImpl userDetails){
        return commentService.delete(userDetails.getUser(), id);
    }
  • 관리자 권한으로만 할수 있게 설정해 놓는 것, 이건 안되는지? (댓글의 수정과 삭제에 대해)
profile
갑자기 왜 춤춰?

0개의 댓글