9조(조이름 :npc) spring 프로젝트 진행
◆ 프로젝트 제목 : OTT 추천 뉴스피드
- 설명 : Over The Top란, OTT는 인터넷을 통해 다양한 플랫폼으로 사용자가 원할 때 방송을 보여주는 VOD 서비스이다.
대표적으로 넷플릭스, 디즈니, 왓챠, 웨이브 등이 있다. 이번 뉴스피드의 목적은 OTT에서 제공하는 방송에 관하여 다양한 소식을 전달하는 것이다. 새롭고 다양한 OTT방송 프로그램들을 한눈에 보여주는 서비스를 구현할 것이다.
◆ 와이어 프레임
- 메인페이지
- 상세페이지
- 로그인 페이지
- 회원가입
- 프로필 페이지
- 비밀번호 변경 페이지
◆ ERD 설계
◆ 개발해야 하는 기능
- 필수 기능
1. 사용자 인증 기능
n 회원가입 기능
n 로그인 및 로그아웃 기능
2. 프로필 관리
n 프로필 수정 기능
3. 게시물 CRUD 기능 (자유게시판)
n 게시물 작성, 조회, 수정, 삭제 기능
n 게시물 작성, 수정, 삭제 시 새로고침 기능
n 게시물, 댓글 좋아요 ( 추가 기능)
4. 뉴스 피드 기능
n 뉴스 피드 페이지
- 추가로 구현 할 수 있는 기능
5. ott 작품 조회 (추가 기능)
- 신작조회, 인기작 조회
- 좋아요, 리뷰 기능 추가
6. 데이터 크롤링 (필요시 추가기능 )
7. 프론트엔드 디자인
8. 카테고리 만들기(자유게시판, 뉴스피드, 인기작, 신규작 등 추가기능)
9. 이메일 가입 및 인증(추가기능)
10. 댓글 crud (추가기능)
- 명예의 전당 (시간남을 때 )
- 1.프로필에 사진 업로드 기능 구현
- 2.게시물에 멀티미디어 지원 기능 구현
- 3.팔로우 기능 구현
- 4.HTTP를 HTTPS로 업그레이드 하기
◆ API 명세
분류 | 기능 | 메소드 | url | request | Response |
사용자관리 | 회원가입 | Post | /user/signup | username(사용자명), password(비밀번호), isAdmin(관리자여부) | 성공여부 : "success", msg: "회원가입 성공" |
로그인 | Post | /user/login | username(사용자명), password(비밀번호), 관리자 토큰 |
성공여부 : "success", msg: "로그인 성공" |
|
로그아웃 | Post | /user/logout | 성공여부 : "success", msg: "로그아웃 성공" |
||
프로필 조회 | Get | /user/{userId}/profile | Long userId | 성공 시 : ResponseEntity.ok(userProfile) 성공 메시지와 프로필정보 호출 |
|
이메일 인증 | Get | /user/verify-email | String token (이메일 토큰) |
성공시 "이메일 인증이 완료되었습니다." 메시지 호출 | |
프로필 수정 | Put | /user/profile | User user | 성공여부 : "success", msg: "프로필조회 성공" |
|
프로필 이미지 등록 | Post | /user/profile/image | @AuthenticationPrincipal UserDetailsImpl userDetails, @RequestParam("file") MultipartFile file | 성공시 : ResponseEntity.ok("프로필 이미지 업로드 성공") | |
게시글 | 게시글 작성 | Post | /post | postDto(게시글 정보), @RequestPart("file") MultipartFile file(첨부파일) | 성공여부 : "success", 게시글을 Client 로 반환 |
게시글 목록 조회 | Get | /posts | 성공여부 : "success", 게시글을 Client 로 반환 |
||
게시글 상세 조회 | Get | /posts/{ post_id } | post_id | 성공여부 메세지 반환, 게시글을 Client로 반환 |
|
게시글 수정 | Put | /posts/{post_id} | postDto(게시글 정보), @RequestPart("file") MultipartFile file(첨부파일) | 성공여부 메세지 반환, 게시글을 Client로 반환 |
|
게시글 삭제 | Delete | /posts/{ post_id } | post_id | 성공여부 메세지 반환, 성공 혹은 실패 message 반환 |
|
좋아요 |
좋아요 | Post | /posts/like | likeRequestDTO(유저id, 게시글id) | 게시글 좋아요 값 1증가 , 좋아요 테이블에 데이터 저장, 성공여부 메시지 반환 |
좋아요취소 | Delete | /posts/like | likeRequestDTO(유저id, 게시글id) | 게시글 좋아요 값 1감소 , 좋아요 테이블에 데이터 삭제, 성공여부 메시지 반환 |
|
댓글 | 댓글 등록 | Post | /posts/{ post_id }/comments | UserDetailsImpl userDetails(유저 정보), @RequestBody CommentRequestDto requestDto(댓글 정보), @PathVariable Long post_id(게시글id) | 성공여부 메세지 반환, 댓글을 Client로 반환 |
댓글 수정 | Put | /posts/{post_id}/comments/{id} | UserDetailsImpl userDetails(유저 정보), @RequestBody CommentRequestDto requestDto(댓글 정보), @PathVariable Long post_id(게시글id) | 성공여부 메세지 반환, 댓글을 Client로 반환 |
|
댓글 삭제 | Delete | /posts/{post_id}/comments/{id} | UserDetailsImpl userDetails(사용자정보), @PathVariable Long id(댓글id), @PathVariable Long post_id(게시글id) | 성공여부 메세지 반환,성공 혹은 실패 message 반환 | |
뉴스피드 | 뉴스피드 메인화면 | / | 빈model 객체 | 신규영화 컨텐츠 목록 반환 |
◆ 역할 분담 및 개발 방향
-- 역할 분담
- 필수기능 역할분담
1. 깃허브랑, 뼈대만들기 , db
-- 다같이 하시고
2. 서연님 뉴스피드 불러오기
3. 혜원님 댓글 crud
4. 구현님 게시글crud
5. 남명님 프로필 수정
6. 김태훈 로그인,로그아웃
-- 개발 방향
- 7/4 화요일 까지 필수 기능 개발
- 이후에는 필수 기능 검토하면서 구현가능 한 추가 기능들을 구현할 예정
'Study > 개발일지' 카테고리의 다른 글
[백엔드온라인TIL] java 학습 27일차 (0) | 2023.06.30 |
---|---|
[백엔드스터디WIL]6주차 학습일지 (0) | 2023.06.30 |
[백엔드온라인TIL] java 학습 26일차 (0) | 2023.06.29 |
[백엔드온라인TIL] java 학습 25일차 (0) | 2023.06.28 |
[백엔드온라인TIL] java 학습 24일차 (0) | 2023.06.27 |