[스프링 프레임워크 첫걸음] 책을 참고하여 글을 작성하였습니다.
애플리케이션 설명
1~7장을 토대로 만드는 'OX 퀴즈' 애플리케이션을 설명한다.
작성할 기능 목록
No | 기능 | 설명 |
---|---|---|
1 | 등록 기능 | 퀴즈를 등록함 |
2 | 갱신 기능 | 등록된 퀴즈를 갱신함 |
3 | 삭제 기능 | 등록된 퀴즈를 삭제함 |
4 | 목록 표시 기능 | 등록된 퀴즈의 목록을 표시함 |
5 | 게임 기능 | 퀴즈 게임을 실시함 |
URL 목록
No | 역할 | HTTP 메서드 | URL |
---|---|---|---|
1 | 퀴즈 목록을 표시함 | GET | /quiz |
2 | 등록 처리를 실행함 | POST | /quiz/insert |
3 | 갱신 화면을 표시함 | GET | /quiz/{id} |
4 | 갱신 처리를 실행함 | POST | /quiz/update |
5 | 삭제 처리를 실행함 | POST | /quiz/delete |
6 | 퀴즈 화면을 표시함 | GET | /quiz/play |
7 | 퀴즈 답을 체크함 | POST | /quiz/check |
애플리케이션을 생성할 때 레이어를 분리하는 것을 추천하기 때문에 이 애플리케이션도 세 개의 레이어로 분리한다.
애플리케이션 레이어
도메인 레이어
인프라스트럭처 레이어
생성할 컴포넌트 목록
No | 레이어 | 컴포넌트 | 이름 | 비고 |
---|---|---|---|---|
1 | 애플리케이션 레이어 | View | - | 화면 표시 |
2 | 애플리케이션 레이어 | Controller | QuizController | 제어 역할 담당 |
3 | 애플리케이션 레이어 | Form | QuizForm | 화면의 게임 폼을 표현 |
4 | 도메인 레이어 | Service | QuizService | 인터페이스로 생성 |
5 | 도메인 레이어 | Servicelmpl | QuizServiceImpl | Service를 구현 |
6 | 도메인 레이어 | 도메인 객체 | Quiz | 엔티티 역할 |
7 | 도메인 레이어 | Repository | QuizRepository | 인터페이스로 생성 |
8 | 인프라스트럭처 레이어 | Repositorylmpl | - | O/R Mapper로 자동 생성 |
9 | 인프라스트럭처 레이어 | O/R Mapper | - | 스프링 데이터 JDBC를 사용 |