MVC (Model-View-Controller)
구성요소
| 역할 | 설명 |
|---|---|
| Model | 비즈니스 로직 처리 |
| View | 모델의 결과를 사용자에게 보여주는 역할 |
| Controller | 사용자 요청을 받고 응답을 처리하는 컴포넌트 |
Controller ⇄ Service ⇄ DAO ⇄ DB
⇅
View
Spring MVC 프레임워크
핵심 컴포넌트
| 컴포넌트 | 설명 |
|---|---|
| DispatcherServlet | Front Controller 역할, 요청을 중앙 처리 |
| HandlerMapping | 요청 URL과 Controller 매핑 |
| HandlerAdapter | 요청을 처리할 수 있도록 어댑터 역할 |
| Controller | 비즈니스 로직 처리, 서비스 호출 |
| ViewResolver | View 이름을 실제 View로 변환 |
| ModelAndView | 데이터(Model)와 View 정보를 함께 전달 |
역할별 컴포넌트 어노테이션
| 어노테이션 | 역할 |
|---|---|
@Controller |
Presentation Layer 컨트롤러 설정 |
@Service |
Business Layer 서비스 설정 |
@Repository |
Persistence Layer DAO 설정 |
요청 처리 어노테이션
| 어노테이션 | 설명 |
|---|---|
@RequestMapping |
요청 URL 매핑 정보 설정 |
@GetMapping |
GET 요청 URL 매핑 (축약형) |
@PostMapping |
POST 요청 URL 매핑 (축약형) |
@RequestParam |
요청 URL 파라미터 수신 (생략 가능) |
@ModelAttribute |
요청 파라미터를 객체로 전달 (생략 가능) |