Spring JDBC를 활용한 일정 관리 애플리케이션입니다.
- 목적: 3 Layer Architecture 및 CRUD 필수 기능(JDBC) 연습
- 핵심 기능:
- 일정 생성, 조회, 수정, 삭제 기능 제공
- 작성자와 일정 간의 관계 설정 (FK 활용)
- 페이징 기능 적용
- 예외 처리 및 입력 검증 수행
src
└── main
├── java
│ └── com
│ └── example
│ └── schedule
│ ├── controller
│ ├── dto
│ ├── entity
│ ├── exception
│ ├── repository
│ ├── service
│ ├── SpringBasicScheduleApplication.java
├── resources
│ ├── application.properties
build.gradle
schedule.sql
- 데이터를 전달받아 일정 생성
- 전체 일정 목록 조회 및 조건별 조회
- 특정 일정 ID로 개별 일정 조회
- 선택한 일정의 할 일(task), 작성자명(authorName) 수정
- 비밀번호를 확인 후 수정
- 수정 시 작성일(updatedAt) 갱신
- 일정 삭제 기능 제공
- 비밀번호를 확인 후 삭제
- 작성자와 일정 간 관계 설정 (Foreign Key 활용)
- 작성자 정보 (이름, 이메일, 등록일, 수정일) 관리
- 생성, 조회 API
- 일정 목록 조회 시 페이징 처리 지원
- 페이지 번호 및 크기 기준으로 데이터 조회 및 반환
- HTTP 상태 코드 및 에러 메시지 반환
- @RestControllerAdvice를 통한 공통 예외 처리
- 할 일(task) 200자 제한
- 비밀번호 필수 입력
- 이메일 형식 검증
Swagger UI 링크: http://localhost:8080/swagger-ui/index.html
- Backend: Spring Framework, Spring JDBC
- Database: MySQL
- Build Tool: Gradle
https://github.com/mannaKim/spring-basic-schedule.gitapplication.properties파일을 설정하여 DB 연결 정보 입력schedule.sql파일의 sql을 실행하여 테이블 생성
- Swagger UI 접속: http://localhost:8080/swagger-ui/index.html


