🌐 github 주소
https://github.com/JoeMinKyung/spring_scheduleApp
API명세서는 프로젝트 root(최상위) 경로의 README.md
에 작성
참고) API 명세서 작성 가이드
API 명세서란 API명, 요청 값(파라미터), 반환 값, 인증/인가 방식, 데이터 및 전달 형식 등 API를 정확하게 호출하고 그 결과를 명확하게 해석하는데 필요한 정보들을 일관된 형식으로 기술한 것을 의미합니다.
request 및 response는 json 형태로 작성합니다.
README.md
에 첨부설치한 데이터베이스(Mysql)에 ERD를 따라 테이블을 생성
과제 프로그램의 root(최상위) 경로에 schedule.sql
파일을 만들고, 테이블 생성에 필요한 query를 작성하세요.
일정 생성 시, 포함되어야할 데이터
할일
, 작성자명
, 비밀번호
, 작성/수정일
을 저장
작성/수정일
은 날짜와 시간을 모두 포함한 형태
각 일정의 고유 식별자(ID)를 자동으로 생성하여 관리
최초 입력 시, 수정일은 작성일과 동일
다음 조건을 바탕으로 등록된 일정 목록을 전부 조회
수정일
(형식 : YYYY-MM-DD)
작성자명
조건 중 한 가지만을 충족하거나, 둘 다 충족을 하지 않을 수도, 두 가지를 모두 충족할 수도 있습니다.
수정일
기준 내림차순으로 정렬하여 조회
선택한 일정 단건의 정보를 조회할 수 있습니다.
일정의 고유 식별자(ID)를 사용하여 조회합니다.
💻 정답 코드
ScheduleRepository
package com.example.scheduleapp.repository;
import com.example.scheduleapp.entity.Schedule;
import org.springframework.data.jpa.repository.JpaRepository;
public interface ScheduleRepository extends JpaRepository<Schedule, Long> {
}
💡 코드 해설
[Spring] Layered Architecture를 참고하여 3 Layer Architecture
에 따라 각 Layer의 목적에 맞게 구분을 해주었다. db와의 연동 및 데이터 처리를 위해 entity와 dto 패키지를 추가하였다. 이 때 repository는 interface로 생성하기
ScheduleRepository