https://documenter.getpostman.com/view/43364760/2sB2cSgijZ
- Postman을 통한 HTTP 통신
- 데이터 형태 : JSON
- 정해진 기능에 맞는 HTTP METHOD, Params, Body(json) 값들
- 기능에 알맞는 Json 출력값들
- HTTP Status Code
- 200 번대 : 200(+반환 JSON) , 201(+ 반환 JSON) , 204( 반환값 x )
- 400 번대 : 400(잘못된 형식의 값, 회원 아이디 중복, 로그인안했을 때),
401(비밀번호가 틀렸거나 권한이 없을 때),
404(id값들이 잘못됐을 때)
- 500 번대 : 500(요청이 올바르긴한데 쿼리 실행 도중에 문제가 있음 - db연결이나 코드로직 문제)
일정의 고유 식별자(ID), 할일 제목, 할 일 내용, 작성자 아이디, 작성/수정일을 저장
-
할 일 등록
- ※ 로그인 필수
- 필수 입력 값 : 할일 제목, 할 일 내용
- 작성/수정 일은 할 일 등록시 자동 갱신 + 최초 입력 시, 수정일은 작성일과 동일
-
할 일 내용 및 작성자 수정
- ※ 로그인 필수
- 자기가 작성한 스케줄만 수정이 가능
- 수정 가능한 값 : 할일 제목, 할 일 내용
- 수정일은 수정 완료 시, 수정한 시점으로 자동 갱신
-
모든 할 일 불러오기
- 아이디 순서 오름차순 정렬
-
자기가 쓴 할 일 불러오기
- ※ 로그인 필수
- 자기가 작성한 스케줄만 출력함.
수정일기준 내림차순 정렬
-
아이디 값에 맞는 하나의 할 일 출력
- 스케줄 테이블에 있는 아이디값이어야 함
-
아이디 값에 맞는 하나의 할 일 삭제
- ※ 로그인 필수
- 자기가 작성한 스케줄만 삭제 가능
- 스케줄 테이블에 있는 아이디 값이어야 함
-
페이지 넘버와 사이즈에 맞는 모든 할 일 출력
- ※ 로그인 필수
- 페이지 사이즈는 디폴트값으로 10을 가진다.
- 전달받은 페이지 번호와 크기를 기준으로 쿼리를 작성하여 필요한 데이터만을 조회하고 반환 - 범위를 넘어선 페이지를 요청하는 경우 빈 배열을 반환
작성자의 고유 식별자(ID), 이름, 이메일, 등록일, 수정일 정보를 가지고 있음.
-
회원가입
- 필수 값 : 작성자 이름, 이메일, 비밀번호
- 비밀번호는 Bcrypt 함수를 통해 암호화
- 같은 이메일로 여러 아이디를 만들 수 없음.
-
로그인
- 필수 값 : 이메일, 비밀번호
- 로그인 성공시, 세션에 회원 객체가 저장됨
-
회원 정보 수정
- 수정 가능한 값 : 작성자 이름, 비밀번호
- 필수 값 : 현재 비밀 번호
- 수정 완료시 수정된 객체 출력
-
회원 탈퇴
- 회원 탈퇴시 해당 회원이 작성한 할 일 모두 삭제
- 선택한 일정 정보를 조회할 수 없을 때 예외가 발생
- 잘못된 정보로 조회하려고 할 때 => Bad Requset
- 이미 삭제된 정보를 조회하려고 할 때 => Not Found
- 필수 값이 없을 때 예외가 발생
- null 체크 후 빈값일 때 => Not Found
- 중복 사용자 등록 예외
- 사용자 등록할 때 이미 등록되어 있는 `이메일`이 들어오면 가입 방지 => Bad Request
- 비밀번호 검사
- 틀렸을 때 인증 실패 => UNAUTHORIZED
- 로그인이 필요한 서비스 이용시
- 로그인 하지 않았을 때 => UNAUTHORIZED
- 권한이 없는 서비스를 이용하려고 할 때 (남의 스케줄,덧글 값들을 수정/삭제시도) => UNAUTHORIZED
JAVA spring-security-core:6.4.4 spring-boot
JDK 17.0.14
MySQL
25.04.01 - 25.04.04
참고 : https://treasurebear.tistory.com/70
🎨:: 코드의 구조/형태 개선 Improve structure / format of the code.
⚡️:: 성능 개선 Improve performance.
🔥:: 코드/파일 삭제 Remove code or files.
🐛:: 버그 수정 Fix a bug.
✨:: 새 기능 Introduce new features.
📝:: 문서 추가/수정 Add or update documentation.
💄:: UI/스타일 파일 추가/수정 Add or update the UI and style files.
♻️:: 코드 리팩토링 Refactor code.
➕:: 의존성 추가 Add a dependency.
➖:: 의존성 제거 Remove a dependency.
🔨:: 개발 스크립트 추가/수정 Add or update development scripts.
💡:: 주석 추가/수정 Add or update comments in source code.




