구현할 SBB의 기능은 아쉽지만 여기까지이다.
함께 더 많은 기능을 추가하고 싶지만 이 책은 SBB의 완성이 아니라
SBB를 성장시키며 얻게 되는 경험을 전달하는 것을 목표로 하고 있다.
다루지 못했지만 구현하면 좋을것 같은 기능들이 몇 가지 있는데 여기에 간단하게 소개해 보았다.
아래에 소개한 기능들을 여러분 스스로 하나씩 구현해 가다보면 스프링부트에 대해서 더 깊게 이해할수 있게 될 것이다.
답변 페이징과 정렬
현재 하나의 질문에 무수히 많은 답변이 달릴 수 있는 구조이다.
만약 답변이 100개가 된다고 상상해 보자.
성능을 위해서라도 답변의 페이징은 반드시 필요할 것이다.
그리고 답변을 보여줄 때에도 최신순, 추천순 등으로 정렬하여 보여줄 수 있는 기능도 필요할 것이다.
유명한 질문 답변 사이트인 스택오버플로우(stackoverflow.com)나 레딧(reddit.com)을 보아도
항상 추천수가 많은 답변을 먼저 보여주고 있다.
여러분은 이미 질문 목록에 페이징과 정렬을 적용한 경험이 있기 때문에
답변에 페이징과 정렬을 적용하는 것이 그리 어렵지는 않을 것이다.
댓글
질문 또는 답변에 댓글을 달 수 있는 기능을 구현해 보자.
Comment 라는 엔티티를 생성하고 Question, Answer 엔티티와 연결하면 쉽게 구현할 수 있을 것이다.
카테고리
현재는 '질문답변' 이라는 하나의 카테고리로만 게시판이 구성되지만
여기에 '강좌'나 '자유게시판'과 같은 게시판을 추가로 더 만들고 싶을 수도 있을 것이다.
이런 경우에 Question 엔티티에 Category 엔티티를 추가하여 게시판을 분류할 수 있을 것이다.
비밀번호 찾기와 변경
현재 사용자가 비밀번호를 분실했을때 조치할수 있는 방법이 없다.
비밀번호 분실 시 임시비밀번호를 가입할 때 등록한 이메일 주소로 발송하여
로그인 할 수 있도록 조치하는 간단한 방법을 구현해 보자.
그리고 비밀번호 변경 프로그램도 필요하다.
로그인 후 기존 비밀번호와 새 비밀번호를 입력받아 비밀번호를 변경할 수 있는 프로그램을 만들어 보자.
프로필
로그인 한 사용자의 프로필 화면을 만들어 보자.
이 화면에는 사용자에 대한 기본정보와 작성한 질문, 답변, 댓글 등을 확인할 수 있도록 하면 좋을 것이다.
최근 답변과 최근 댓글
현재 SBB는 질문글 위주로 목록이 보여진다.
하지만 최근에 작성된 답변이나 최근에 작성된 댓글이 궁금할 수도 있을 것이다.
최근 답변과 최근 댓글을 확인할 수 있는 기능을 추가해 보자.
조회 수
현재 SBB는 답변 수를 표시하고 있지만 조회 수는 표시하지 않는다.
조회 수를 표시해 보자.
소셜 로그인
SBB에 구글이나 페이스북, 트위터 등을 경유하여 로그인하는 소셜 로그인 기능을 구현해 보자.
'JAVA > SpringBoot CRUD Board' 카테고리의 다른 글
[VSCODE] SpringBoot CRUD게시판 만들기 - 검색 (0) | 2022.07.06 |
---|---|
[VSCODE] SpringBoot CRUD게시판 만들기 - 앵커 (0) | 2022.07.05 |
[VSCODE] SpringBoot CRUD게시판 만들기 - 추천 (0) | 2022.07.05 |
[VSCODE] SpringBoot CRUD게시판 만들기 - 수정과 삭제 (0) | 2022.07.05 |
[VSCODE] SpringBoot CRUD게시판 만들기 - 글쓴이 표시 (0) | 2022.07.05 |