최대 1 분 소요


구상

완성 기한이 28일 17시 30분까지라 많은 기능을 구현하기는 힘들거라 보고, 지금까지 학습한 Spring Boot를 응용해서 기본기능에 충실한 간단한 게시판 웹페이지를 작성해보기로 했다.

1) 레이아웃

한 페이지만 보여주는게 아니라 화면을 분할해서 페이지를 넘어가더라도 top과 bottom은 계속 유지되도록 하고 싶다.

top 페이지

해당 웹의 이름과 게시판들(일단 한 게시판만 작성하기로)의 링크와 로그인 세션의 유무에 따라 보이는 내용이 달라지는 구역을 표시하려고 한다.

왼쪽은 웹의 이름, 가운데는 게시판들 링크, 오른쪽은 로그인 세션이 없으면 ‘로그인 계정생성’ 세션이 있으면 ‘로그아웃 정보수정’을 표시한다.

bottom 페이지

일단 담을것이 없으니 Copyright만 넣는다.

시간이 되면 다크모드를 구현해보고 싶다.

2) 계정 관련

계정에 필요한 데이터는 데이터를 식별할 userId를 primary값으로 했고, 추가로 비밀번호, 별명, 이메일, 계정 생성일을 데이터 값으로 정했다.

모든 게시글에 대한 권한을 가진 계정을 설정해둔다.

계정 생성

정보를 post로 넘길 때 4가지 값 모두 null인지 체크하고 null이 있다면 에러메시지를 띄운다.

id는 중복체크하는 버튼을 만들어 체크값이 참일때만 생성가능하게 한다.

pw도 일단은 8자리 이상만 만족하도록 하고, 이메일은 문자열@문자열.문자열 양식을 만족하는지 체크한다.

로그인

로그인 시 post에 null을 주기 전에 미리 체크한다.

로그인 후에는 유저 정보에 접근해 수정할 수 있는 페이지도 만들어 보자.

3) 게시글 관련

게시글 리스트를 한 페이지에 10개만(시간이되면 사용자가 선택할 수 있도록) 보이도록 하고, 페이지 이동을 아래에 표시한다.

게시글의 작성일자를 오늘이면 시간을 오늘이 아니라면 YYYY-MM-dd형식으로만 출력한다.

조회수와 추천, 비추천 시스템도 추가해 보자.

게시글의 수정과 삭제는 작성자와 세션의 유저가 같을 경우에만 표시되게 한다.

게시글 작성 버튼은 유저 세션이 존재할 경우에만 표시되게 한다.

아마 시간이 안될테지만 관리자 계정으로 게시글을 작성할 경우 공지로 등록할 수 있는 옵션을 주고 공지일 경우 게시글 목록의 상단에 고정한다.

댓글남기기