Spring 입문 주차 8.19(금) ~ 8.25(목)
1. 개인 과제: 회원가입, 로그인, 댓글 작성/수정/삭제 기능이 추가된 백엔드 서버 만들기 - 로그인 JWT 활용 2. 팀 과제: Spring 핵심 키워드 정리 |
진행 계획
- 19일(금) Spring 핵심 키워드 정리
- 20일(토) Spring 핵심 키워드 정리
- 21일(일) 개인과제에 필요한 강의 수강 및 공부
- 22일(월) API 명세서 작성, ERD 만들기
- 23일(화) 회원가입 기능 코드 작성
- 24일(수) 로그인 기능 코드 작성
- 25일(목) 댓글 작성/수정/삭제 기능 코드 작성 및 AWS 배포
1. 개인 과제 진행 상황
1) 요구사항 파악
기존 요구사항(추가된 부분 하이라이트)
|
새로운 요구사항
|
2) ERD 만들기
3) DB SQL (ERDCloud -> 내보내기 -> sql 미리보기)
CREATE TABLE `users` (
`id` NOT NULL NOT NULL,
`nickname` NOT NULL NULL,
`password` NOT NULL NULL,
`createdAt` NOT NULL NULL,
`modifiedAt` NOT NULL NULL
);
CREATE TABLE `post` (
`id` NOT NULL NOT NULL,
`userId` NOT NULL NOT NULL,
`title` NOT NULL NULL,
`content` NOT NULL NULL,
`createdAt` NOT NULL NULL,
`modifiedAt` NOT NULL NULL
);
CREATE TABLE `comment` (
`id` NOT NULL NOT NULL,
`postId` NOT NULL NOT NULL,
`userId` NOT NULL NOT NULL,
`content` NOT NULL NULL,
`createdAt` NOT NULL NULL,
`modifiedAt` NOT NULL NULL
);
ALTER TABLE `users` ADD CONSTRAINT `PK_USERS` PRIMARY KEY (
`id`
);
ALTER TABLE `post` ADD CONSTRAINT `PK_POST` PRIMARY KEY (
`id`
);
ALTER TABLE `comment` ADD CONSTRAINT `PK_COMMENT` PRIMARY KEY (
`id`
);
ALTER TABLE `post` ADD CONSTRAINT `FK_users_TO_post_1` FOREIGN KEY (
`userId`
)
REFERENCES `users` (
`id`
);
ALTER TABLE `comment` ADD CONSTRAINT `FK_post_TO_comment_1` FOREIGN KEY (
`postId`
)
REFERENCES `post` (
`id`
);
ALTER TABLE `comment` ADD CONSTRAINT `FK_users_TO_comment_1` FOREIGN KEY (
`userId`
)
REFERENCES `users` (
`id`
);
4) API 작성
기능 | API URL | Method | request | response |
회원가입 | /api/member/signup | POST | { "nickname" : "닉네임", "password" : "비번", "passwordConfirm" : "비번" } |
{ "success" : "true", "data" : { "id" : 1, "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, "error" : "null" } |
로그인 | /api/member/login | POST | { "nickname" : "닉네임", "password" : "비번" } |
{ "success" : "true", "data" : { "id" : 1, "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, "error" : "null" } |
게시글 작성 | /api/auth/post | POST | { "title" : "제목", "content": "내용" } |
{ "success" : "true", "data" : { "id" : 1, "title" : "제목", "content": "내용" "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, "error" : "null" } |
게시글 전체 조회 | /api/post | GET | { "success" : "true", "data" : [{ "id" : 1, "title" : "제목", "content": "내용" "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, { "id" : 2, "title" : "제목", "content": "내용" "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }], "error" : "null" } |
|
게시글 상세 조회 | /api/post/{id} | GET | { "success" : "true", "data" : { "id" : 1, "title" : "제목", "content": "내용" "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, "error" : "null" } |
|
게시글 수정 | /api/auth/post/{id} | PUT | { "title" : "제목", "content": "내용" } |
{ "success" : "true", "data" : { "id" : 1, "title" : "수정제목", "content": "수정내용" "nickname" : "닉네임", "createdAt" : "생성시간", "modifiedAt" : "수정시간" }, "error" : "null" } |
게시글 삭제 | /api/auth/post/{id} | DELETE | { "success" : "true", "data" : "success", "error" : "null" } |
|
댓글 생성 | /api/auth/comment | POST | { "postId" : 1, "comment" : "댓글 내용" } |
{ "success" : "true", "data" : { "id" : 1, "nickname" : "닉네임", "comment" : "댓글내용", "createdAt" : "생성시간", "modfiedAt" : "수정시간" }, "error" : "null" } |
댓글 목록 조회 | /api/comment/{id} | GET | { "success" : "true", "data" : [{ "id" : 1, "nickname" : "닉네임", "comment" : "댓글 내용", "createdAt" : "생성시간", "modfiedAt" : "수정시간" }, { "id" : 2, "nickname" : "닉네임", "comment" : "댓글 내용", "createdAt" : "생성시간", "modfiedAt" : "수정시간" }], "error" : "null" } |
|
댓글 수정 | /api/auth/comment/{id} | PUT | { "postId" : 1, "comment" : "댓글 내용" } |
{ "success" : "true", "data" : { "id" : 1, "nickname" : "닉네임", "comment" : "수정 댓글 ", "createdAt" : "생성시간", "modfiedAt" : "수정시간" }, "error" : "null" } |
댓글 삭제 | /api/auth/comment/{id} | DELETE | { "success" : "true", "data" : "success", "error" : "null" } |
2. 오늘 한 일 / 회고
- 개인 과제: ERD 작성, API 작성
- 스프링 강의 듣기
3. TO-DO LIST
- 스프링 강의
- 개인 과제: 회원가입 코드 작성하기
'개발 일지' 카테고리의 다른 글
[TIL]이노베이션 캠프 24일차 (0) | 2022.08.24 |
---|---|
[TIL]이노베이션 캠프 23일차 (0) | 2022.08.23 |
[WIL]이노베이션 캠프 3주차 (0) | 2022.08.21 |
[TIL]이노베이션 캠프 21일차 (0) | 2022.08.21 |
[TIL]이노베이션 캠프 20일차 (0) | 2022.08.20 |