3차 프로젝트 Spring Security
👉 PostController
@PostMapping("/posts")
@Operation(summary = "Create Post", description = "Create post Page")
public PostResponseDto createPost(@RequestBody PostRequestDto requestDto, @AuthenticationPrincipal UserDetailsImpl userDetails) {
return postService.createPost(requestDto, userDetails.getUser().getUsername());
}
👉 PostService
@Transactional
public PostResponseDto createPost(PostRequestDto postRequestDto, String usernmae) {
Category category = categoryRepository.findByName(postRequestDto.getCategory()).orElseThrow();
// 요청받은 DTO 로 DB에 저장할 객체 만들기
Post post = postRepository.saveAndFlush(new Post(postRequestDto, usernmae,category));
return new PostResponseDto(post);
}
🙋♂️ 소감 :
강의 내용을 따라 적용하다 보니 UserDetailsImpl에 들어있는 User 객체를 그대로 사용했는데, 위 코드처럼 정말 필요한 username만 가져다 쓰는 코드로 바꿨다. (튜터님 추천)
오늘 최종본 코드에 마지막 시큐리티를 적용을 했고, 리팩토링한 코드들을 병합하였다.
아직 깃 활용이 미숙하여 Ctrl + D 파일비교를 사용하여 가내수공업을 했는데, 잘 실행이 되어서 다행이다...
다음 프로젝트는 정말 깃 활용법좀 제대로 익혀야겠다.
그리고 API 와 변수명 메서드명 모두 사전에 최대한 변경없이 딱 딱 정하고 시작해야겠다.
😈 아는 내용이라고 그냥 넘어가지 않기! 😈
'❤️🔥TIL (Today I Learned)' 카테고리의 다른 글
[TIL] 2023-01-09(51day) (0) | 2023.01.09 |
---|---|
[TIL] 2023-01-06(50day) (0) | 2023.01.06 |
[TIL] 2023-01-04(48day) (0) | 2023.01.04 |
[TIL] 2023-01-03(47day) (0) | 2023.01.03 |
[TIL] 2023-01-02(46day) (0) | 2023.01.02 |
댓글