프로젝트 하면서/홈페이지 만들기

mvc 아키텍쳐 기반으로 프로젝트 구조 설계

worldforest 2024. 3. 28. 11:24
src
├── main
│   ├── java
│   │   └── com
│   │       └── example
│   │           └── yourapplication
│   │               ├── controller
│   │               │   ├── HomeController.java
│   │               │   └── LectureController.java
│   │               ├── service
│   │               │   ├── HomeService.java
│   │               │   └── LectureService.java
│   │               ├── repository
│   │               │   └── LectureRepository.java
│   │               ├── model
│   │               │   └── Lecture.java
│   │               └── YourApplication.java
│   └── resources
│       ├── application.properties
│       └── templates
│           ├── home.html
│           └── lecture.html
└── test
    └── java
        └── com
            └── example
                └── yourapplication
                    ├── controller
                    │   ├── HomeControllerTest.java
                    │   └── LectureControllerTest.java
                    ├── service
                    │   ├── HomeServiceTest.java
                    │   └── LectureServiceTest.java
                    └── repository
                        └── LectureRepositoryTest.java

 

  • controller: 클라이언트의 요청을 처리하는 클래스들이 위치합니다. 각 컨트롤러는 특정 엔드포인트의 요청을 처리하고 적절한 서비스를 호출합니다.
  • service: 비즈니스 로직을 처리하는 클래스들이 위치합니다. 컨트롤러에서 전달된 요청을 받아서 필요한 작업을 수행하고, 데이터베이스 조작 등을 처리합니다.
  • repository: 데이터베이스와의 상호 작용을 위한 인터페이스들이 위치합니다. Spring Data JPA를 사용할 경우, 해당 인터페이스들은 데이터베이스 조작을 위한 메서드들을 정의합니다.
  • model: 데이터 모델을 정의하는 클래스들이 위치합니다. 데이터베이스의 테이블과 매핑되는 엔터티 클래스들이 여기에 포함됩니다.
  • YourApplication.java: 애플리케이션의 진입점을 정의하는 클래스입니다.
  • resources: 애플리케이션의 설정 파일 및 정적 리소스들이 위치합니다.
  • test: 테스트 코드들이 위치합니다. 각각의 컨트롤러, 서비스, 리포지토리에 대한 테스트를 포함합니다.
반응형