1.아이템 선정
- 웹의 기본적인 소양인 CRUD를 구성하는 게시판을 만들고, 기능을 하나씩 추가한다.
2.개요
- 프로젝트 명칭:BoardService
- 개발인원:1명
- 개발기간:2023.02.17~ 2023.02.28
- 주요기능
①게시판 - CRUD 기능, 조회수, 페이징 및 검색기능
②댓글 - CRUD 기능
③사용자 - 회원가입, 로그인, 유효성검사
- 개발언어:Java8
- 개발환경:Spring Boot, Spring MVC, Spring JDBC, Thymeleaf, Lombok
- 데이터베이스:MySQL
- 형상관리 툴:GitHub
- 라인수
3.요구사항 분석
3-1.회원 가입 페이지
- 권한은 일반 사용자, 관리자가 있다
- 회원 가입을 하면 기본적으로 일반 사용자 권한을 갖는다.
- 회원은 여러 권한을 가질 수 있다.
- 일반 사용자는 여러명 있을 수 있다.
- 관리자는 여러명 있을 수 있다.
3-2.로그인
- id(또는 email), 암호를 입력해 로그인한다.
- id,암호가 일치할 경우 로그인 처리한다.
3-3. 글쓰기
- 로그인을 한 사용자는 글을 작성할 수 있다.
3-4.글 목록 보기
- 1페이지는 최대 10개씩 보여진다.
- 전체 페이지 목록이 보인다.
4. DB 설계
create table role (
role_id int primary key,
name varchar(20)
);
create table user(
user_id int primary key auto_increment,
email varchar(255) not null,
name varchar(50) not null,
password varchar(50) not null,
regdate timestamp default now()
);
create table user_role (
user_id int,
role_id int,
primary key(user_id, role_id),
foreign key(user_id) references user(user_id),
foreign key(role_id) references role(role_id)
);
create table board (
board_id int primary key auto_increment,
title varchar(100) not null,
content text null,
user_id int not null,
regdate timestamp default now(),
view_cnt int default 0,
foreign key (user_id) references user(user_id)
);
5. API 설계
6.와이어 프레임
7.페이퍼 프로토타이핑
7-1.목록
7-1-1.로그인 안했을 때
7-1-2. 로그인 했을 때
7-2.목록 상세보기
7-2-1. 글 상세(로그인)
7-2-2. 글 상세(로그인X)
7-3.삭제하기
7-4.수정하기
7-5.회원가입
7-6.로그인
7-7.welcome
8.개발내용
- CRUD 기능 구현(https://gaksitalcoder.tistory.com/293)
'프로젝트 > 게시판만들기' 카테고리의 다른 글
[사이드프로젝트/게시판 만들기] CRUD 기능별 구현 (0) | 2023.02.22 |
---|