본문 바로가기

CRUD 게시판5

RestApi 게시판 CRUD 만들기 (4) - PostMan 게시글 등록 - 2개 게시글 전체 조회 - 2건 게시글 1건 조회 - id=1 게시글 수정 ( 제목1 -> 제목1변경 / 내용1 -> 내용1변경 ) 게시글 삭제 - id =2 -> 이후 전체 조회시 id =2 미확인 2022. 10. 12.
RestApi 게시판 CRUD 만들기 (4) - Controller Test Controller 테스트를 생성 가장 윗부분 설정 부분 @SpringBootTest @AutoConfigureMockMvc class PostControllerTest { @Autowired MockMvc mockMvc; @Autowired PostRepository postRepository; @Autowired ObjectMapper objectMapper; @BeforeEach void clean() { postRepository.deleteAll(); } } MockMvc를 사용해야 하므로 @AutoConfigureMockMvc 를 선언해준다. MockMvc와 postRespository , String 객체로 만들어주기 위한 ObjectMapper 를 주입시켜준다 @BeforeEach를 이용해.. 2022. 10. 12.
RestApi 게시판 CRUD 만들기 (3) - Service Test postServiceTest 를 만들어 테스트 가장 위 설정부분 @SpringBootTest class PostServiceTest { @Autowired PostService postService; @Autowired PostRepository postRepository; @BeforeEach void clean() { postRepository.deleteAll(); } postService 와 PostRepository 를 주입받는다. @BeforeEach를 이용해 각 테스트 시작 전 postRepository를 모두 초기화(삭제) 해준다. @Test @DisplayName("게시물_저장_테스트") void create() { CreatePostDto post = CreatePostDto.build.. 2022. 10. 12.
RestApi 게시판 CRUD 만들기 (2) - Service , Controller PostService @RequiredArgsConstructor @Service public class PostService { private final PostRepository postRepository; //등록 @Transactional public void create(@RequestBody CreatePostDto createPostDto) { Post post = Post.builder() .title(createPostDto.getTitle()) .content(createPostDto.getContent()) .build(); postRepository.save(post); } //1건 조회 @Transactional(readOnly = true) public PostsResponse .. 2022. 10. 12.
RestApi 게시판 CRUD 만들기 (1) CRUD 기능만 있는 게시판을 연습해보았다. 어떤 서비스든 CRUD 기능이 없는 애플리케이션은 없을 것이고, 그만큼 기초가 되는 부분이라고 생각한다. Entity 클래스인 Post.class 에서는 @setter 를 사용하지 않았다. 예외처리, 유효성, 로그인 등 다른 기능은 모두 제외했다. 화면을 구성하지 않았으며 테스트와 포스트맨으로 기능이 정상작동하는지 확인했다 패키지 구조설계는 계층형 패키지가 아닌, 도메인형 패키지 구조로 진행했다. post 밖에 없지만, 복잡한 애플리케이션에서는 도메인형 패키지가 더욱 가독성이 좋다고 생각한다. 계층형은 controller , service , repository 이렇게 나눈다 복잡해지면 많은 controller 패키지에서 내가 원하는 controller 를 찾.. 2022. 10. 12.