티스토리 뷰
728x90
반응형
1. 게시판 페이지 세부 기능
(1) 게시판 페이지에 구현될 기능
- 검색 기능
- 게시글 항목 클릭 시 페이지로 이동 기능
- 페이지네이션 기능
- 홈으로 이동 기능 (게시판 페이지로 리다이렉션)
- 정렬 기능 (제목, 해시태그 등으로 정렬)
(2) 구현 및 테스트 작성
- service 디렉토리 생성하고, 그 안에 ArticleService class 생성한다.
- ctrl + shift + t를 사용하면 해당 클래스에 대한 테스트가 test 디렉토리 안 대칭되는 위치에 바로 생성된다.
- 이렇게 생성한 테스트는 스프링부트의 슬라이싱 테스트 기능을 사용하지 않아 스프링부트가 로딩되는 시간을 단축할 수 있게 되는 것이다. 대신 도킹을 하는 방법(mockito)으로 의존성을 해결한다.
- @ExtendWith(MoockkitoExtension.class)
- 이외에도 @RequiredArgsConstructor, @Transactional 어노테이션을 붙여준다.
- sut : system under test 테스트 대상을 의미한다.
- ArticleDto를 사용하여 글을 검색하는 테스트를 할 수 있다.
- dto 패키지를 생성하고, ctrl + n > JPA > DTO 를 활용하면 이미 생성되어 있는 Entity를 활용하여 쉽게 dto를 생성할 수 있다.
- class로도 생성 가능하고, Java Record로도 만들 수 있다.
- 필요한 필드만 선택하여 가져올 수 있다.
- dto 패키지를 생성하고, ctrl + n > JPA > DTO 를 활용하면 이미 생성되어 있는 Entity를 활용하여 쉽게 dto를 생성할 수 있다.
- Domain 안에 type 디렉토리를 생성하고, SerchType에 대한 enum을 생성한다.
- TITLE, CONTENT, ID, NICKNAME, HASHTAG
- 게시글 페이지에서 사용될 메소드 searchArticles, serchArticle은 읽어서 보여주는 것이 주요 역할이기 때문에, @Transactional(readOnly = true) 를 붙여준다.
- 홈으로 이동하는 것은 컨트롤러의 역할이기 때문에 mainController를 생성하여 root path를 붙여 리다이렉션을 사용한다.
- @GetMapping(“/”)
- “redirect:/articles”
- Page 기능 안에 페이지네이션 기능과 정렬 기능이 포함되어 있다. 때문에 해당 기능을 이용하면 쉽게 구현 가능하다.
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
#패스트캠퍼스 #포트폴리오 #직장인자기계발 #환급챌린지 #포트폴리오챌린지 #패스트캠퍼스후기 #초격차패키지 #오공완
728x90
반응형
'Study > FastCampus' 카테고리의 다른 글
[Java Project] Part 2. 게시판 서비스 만들기 - 게시판 페이지 기능 구현 (0) | 2023.09.06 |
---|---|
[Java Project] Part 2. 게시판 서비스 만들기 - 로그인 페이지 기능 테스트 및 게시판 페이지 기능 구현 (0) | 2023.09.05 |
[Java Project] Part 11. 자소서 작성 팁 (0) | 2023.09.03 |
[Java Project] Part 2. 게시판 서비스 만들기 - 로그인 페이지 생성 & 디자인 (1) | 2023.09.02 |
[Java Project] Part 2. 게시판 서비스 만들기 - 게시판 페이지 생성 (0) | 2023.09.01 |
댓글