회원정보를 관리하는 하는 웹사이트를 생성하는 것이 목적이다.
Java Spring모델을 기반, View부분은 Thymeleaf.
DB: MySQL / 관리툴은 NaviCat
IDE: IntelliJ IDEA.
기능 | 설명 |
---|---|
등록기능 | 회원등록 |
업데이트 기능 | 등록한 회원정보 변경 |
삭제 기능 | 등록한 회원정보 삭제 |
목록표시 | 등록한 회원정보 나열 |
기능 | 설명 | URL |
---|---|---|
목록화면 표시 | GET | /account |
등록처리 실행 | POST | /account/insert |
업데이트 화면 표시 | GET | /account./{id} |
업데이트 프로세스 실행 | POST | /account/update |
삭제처리 실행 | POST | /account/delete |
레이어 별로 나누어서 애플리케이션을 생성한다.
애플리케이션은 총 3개의 레이어로 나뉘는데
- 애플리케이션 계층
- 도메인 계층
- 인프라 계층
엄밀한 DDD모델이라 할 수는 없으나, 그에 기반하여 생성한다.
이를 좀 더 자세히 보면 이러한 형태로 되어 있다.
레이어 | 구성요소 | 명칭 | 비고 |
---|---|---|---|
애플리케이션 계층 | View | html 파일들 | 외형, 화면 |
애플리케이션 계층 | Controller | AccountController | 제어역할 |
애플리케이션 계층 | Form | AccountForm | 입력양식 표현 |
도메인 계층 | Service | AccountService | 인터페이스 생성 |
도메인 계층 | ServiceImpl | AccountServiceImpl | 서비스 구현 |
도메인 계층 | Domain Object | Account | Entity와 같은 역할은 함. |
도메인 계층 | Repository | AccountRepository | 인터페이스 생성 |
인프라 계층 | RepositoryImpl | O/R Mapper에 의해 자동으로 생성이 됨 | |
인프라 계층 | O/R Mapper | Spring Data JDBC를 사용함. |