본문 바로가기
❤️‍🔥TIL (Today I Learned)

[TIL] 2023-01-05(49day)

by elicho91 2023. 1. 6.

 

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

댓글