일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- 자료구조
- 함수형 인터페이스
- Spring
- Spring 예외처리
- 스키마 디자인
- file i/o
- char to int
- set-version
- ubuntu
- 배열 탐색
- ubuntu 패스워드
- REST HTTP API
- custom exception
- root passwd
- git workflow
- mapstruct
- Spring MVC
- Java
- 리눅스 사용권한
- N:N
- git 설정
- AOP
- O(log n)
- 탐욕 알고리즘
- JAVA 재귀함수
- ubuntu passwd
- RestControllerAdvice
- 스키마 설계
- http 응답코드
- 코드스테이츠
Archives
- Today
- Total
개발소설
Spring MVC 본문
- spring-webmvc : Spring의 모듈 중에서 서블릿(Servlet) API를 기반으로 클라이언트의 요청을 처리하는 모듈
- 서블릿(Servlet) : 클라이언트의 요청을 처리하도록 특정 규약에 맞추어서 Java 코드로 작성하는 클래스 파일
- 서블릿 컨테이너(Servlet Container) : 서블릿들이 웹 애플리케이션으로 실행이 되도록 해준다.
- 대표적으로 아파치 톰캣(Apache Tomcat)이 있다.
- 서블릿 컨테이너(Servlet Container) : 서블릿들이 웹 애플리케이션으로 실행이 되도록 해준다.
- spring-webmvc 모듈이 Spring MVC
- Spring MVC는 웹 프레임워크의 한 종류이기 때문에 Spring MVC 프레임워크라고도 불린다.
- Spring MVC에서 M은 Model, V는 View, C는 Controller
- Model : 클라이언트에게 응답으로 돌려주는 작업의 처리 결과 데이터
- View : Model 데이터를 이용해서 웹브라우저 같은 클라이언트 애플리케이션의 화면에 보여지는 리소스(Resource)를 제공 - 대표적으로 JSON 포맷
- Controller : 클라이언트 측의 요청을 전달 받아 Model과 View의 중간에서 상호 작용을 해주는 역할
Spring MVC의 요청흐름
- 클라이언트가 요청시 DispatcherServlet에게 요청이 전달
- DispatcherServlet은 클라이언트의 요청을 처리할 Controller에 대한 검색을 HandlerMapping 인터페이스에게 요청
- HandlerMapping은 클라이언트 요청과 매핑되는 핸들러 객체를 다시 DispatcherServlet에게 리턴
- DispatcherServlet은 Handler 메서드를 직접 호출하지 않고, HandlerAdpater에게 Handler 메서드 호출을 위임
- HandlerAdapter는 DispatcherServlet으로부터 전달 받은 Controller 정보를 기반으로 해당 Controller의 Handler 메서드를 호출
- Controller의 Handler 메서드는 비즈니스 로직 처리 후 리턴 받은 Model 데이터를 HandlerAdapter에게 전달
- HandlerAdapter는 전달받은 Model 데이터와 View 정보를 다시 DispatcherServlet에게 전달
- DispatcherServlet은 전달 받은 View 정보를 다시 ViewResolver에게 전달해서 View 검색을 요청
- ViewResolver는 View 정보에 해당하는 View를 찾아서 View를 다시 리턴
- DispatcherServlet은 ViewResolver로부터 전달 받은 View 객체를 통해 Model 데이터를 넘겨주면서 클라이언트에게 전달할 응답 데이터 생성을 요청
- View는 응답 데이터를 생성해서 다시 DispatcherServlet에게 전달
- DispatcherServlet은 View로부터 전달 받은 응답 데이터를 최종적으로 클라이언트에게 전달
DispatcherServlet의 역할
- DispatcherServlet이 애플리케이션의 가장 앞단에 배치되어 다른 구성요소들과 상호작용하면서 클라이언트의 요청을 처리하는 패턴을 Front Controller Pattern
JSON 포맷을 JAVA 클래스로 변경해주는 온라인 툴
'Spring Framework' 카테고리의 다른 글
DTO(Data Transfer Object) (0) | 2023.04.13 |
---|---|
SpringMVC - Controller (0) | 2023.04.12 |
AOP(Aspect Oriented Programming) (0) | 2023.04.08 |
DI - 스프링 컨테이너(Spring Container), 빈(bean) (0) | 2023.04.05 |
Spring Framework 기본 개념 (0) | 2023.04.02 |
Comments