애플리케이션 설명
기능 목록
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 |
예제 애플리케이션의 레이어
- 애플리케이션 레이어
클라이언트에서 받은 요청을 제어하고 도메인 레이어를 사용하여 애플리케이션을 제어
- 도메인 레이어
도메인 객체에 대해 애플리케이션의 서비스 처리를 실행
- 인프라스트럭처 레이어
도메인 객체에 대해 CRUD 조작을 해서 데이터의 영속화를 당담
레이어별 컴포넌트 설명
애플리케이션 레이어
- Controller
요청을 처리에 매핑하고 결과를 뷰에 넘겨주는 제어를 함. 주요 처리는 Controller 안에서 실행하지 않고 '도메인 레이어'의 Service를 호출
- Form
화면의 폼을 표현. 화면에서 입력한 값을 Controller에 넘겨줌. 또한 Controller에서 화면에 결과를 추력할 때도 사용. 도메인 레이어가 애플리케이션 레이어에 의존하지 않도록 Form에서 도메인 객체로 변환하거나 도메인 객체에서 Form으로 변환하는 것을 애플리케이션 레이어에서 수행해야함.
- View
화면 표시를 담당
도메인 레이어
- 도메인 객체
서비스 처리를 실행할 때 필요한 자원(Entity 등)
- Service
애플리케이션의 서비스 처리를 담당.
- Repository
Repository는 인터페이스이며, 데이타베이스의 데이터 조작 내용만 정의함
인프라스트럭처 레이어
- Repositorylmpl
도메인 레이어에서 정의한 Repository의 구현 클래스입니다. 'O/R Mapper'가 Repository의 구현 클래스를 생성하는 경우도 있음