본문 바로가기

Back-end/Spring MVC 개념20

Spring MVC를 마치며 지금까지 그리고 다음을 향하여 Spring이 무엇인지, 왜 필요한지를 이야기한 Spring 개념을 시작으로, 프레임 워크의 시작이자 현재인 MVC1 & 2를 익히면서 Spring에 대해 배웠다. 다음은 마지막 단계인 JPA에 대해서 공부하고 포스팅을 이어나갈 예정이다. 개발자로서 공부할 것은 끊임없지만, 주니어 개발자로 취직하기 위한 기본적인 기술적 소양의 마지막 과정을 JPA로 정해놓았다. 얼마 안 남았다. 끝까지 가보자. 2022. 3. 21.
18. HTTP message converter 0. 개요 - 지금까지 Spring MVC에서 HTTP Request와 Reponse를 처리하는 방법에 대해서 알아보았다. - HTTP Request로부터 URL parameter와 message body의 데이터를 읽는 방법과 view template을 이용하여 정적/동적으로 HTML을 처리하고, HTTP message body를 이용하여 String 또는 JSON 형태로 HTTP Response를 처리하는 방법에 대해서 알아보았다. - 이처럼 Spring MVC는 HTTP Request와 Response를 쉽게 처리할 수 있었다. - 그렇다면 Spring MVC 내부적으로 어떤 과정을 거치길래 이런 것들이 가능할까? - 그 중심에는 HTTP message converter가 있다. 1. HTTP me.. 2022. 3. 18.
17. Response 처리방법 0. 개요 - 이전 포스팅까지 HTTP Request를 처리하는 방법에 대해서 알아보았다. - 요청을 GET 방식과 POST 방식으로 나누어 각각 처리하는 방법에 대해 배웠다. - 이번 포스팅에서는 HTTP Response는 어떻게 처리하는지 알아보자. 1. HTTP Response의 종류 - HTTP Request에는 3가지 방식이 존재했다. → GET 방식을 사용한 URL parameter 전달 → 태그를 이용한 POST 방식의 URL parameter 전달 → POST 방식을 사용한 Request body를 전달 - 이와 마찬가지로 HTTP Response 또한 3가지 방식이 존재한다. → 정적 리소스를 응답하는 방식 → 동적 리소스(= view template)를 응답하는 방식 → HTTP 메시지.. 2022. 3. 17.
16. Request - JSON 조회방법 0. 개요 - 앞선 2개의 포스팅에서 Request parameter와 body를 조회하는 방법에 대해서 알아보았다. - 이를 요약하자면 다음과 같이 정리할 수 있다. 1. 요청 parameter를 조회하는 경우 → GET 방식의 HTTP request → 태그를 이용한 POST 방식의 HTTP request → @RequestParam, @ModelAttribute를 사용한다. 2. 요청 body를 조회하는 경우 → POST 방식의 HTTP request → @RequestBody, @ResponseBody를 사용한다. - 그렇다면 JSON 형식으로 전달되는 Request body는 어떻게 조회할까? 천천히 알아보자. 1. Servlet - HttpServlet을 이용하여 JSON 형식의 데이터를 다음.. 2022. 3. 16.
15. Request - message Body 조회방법 0. 개요 - 이전 포스팅에서 Request parameter를 조회하는 방법에 대해서 알아보았다. - Request Body는 Client가 POST method를 사용한 요청에서 사용된다. - POST 방식을 사용한 요청은 HTTP message body에 데이터를 담아 Server에게 전달한다. - 이때 데이터는 JSON 형식으로 작성되는 것이 일반적이다. - 이번 포스팅에서는 Server 측에서 Reqeust Body를 조회하는 방법에 대해 알아보자. 1. HttpServlet - HttpServletRequest를 통해 Request Body를 조회하는 방법을 알아보자. @Slf4j @Controller public class RequestBodyController { @PostMapping(".. 2022. 3. 15.
14. Request - URL parameter 조회방법 0. 개요 - Request Parameter는 Client의 요청을 통해 Server에게 전달하는 URL parameter를 의미한다. - Web은 다음 3가지 방식으로 데이터를 전달한다. 1. GET 방식을 이용한 URL parameter를 전달하는 방식 2. HTML의 Form 태그를 이용한 POST 방식( URL parameter가 HTTP message body에 담아서 전달) 3. POST 방식을 이용한 HTTP message body에 데이터를 담아 전달하는 방식 - GET 방식은 URL parameter를 사용하여 데이터를 Server에게 전달한다. - Form 태그의 POST 방식은 URL parameter를 Request Body에 담아서 Server에게 전달한다. - 이 두 가지 방식.. 2022. 3. 14.
13. Annotation 기반의 URL 매핑 0. 개요 - 이전 포스팅에서 Front Controller의 동작을 Annotation을 이용하여 적용하는 방법에 대해서 알아보았다. - 이번 포스팅에서는 Spring Boot가 지원하는 다양한 URL 매핑 방식 및 annotation에 대해서 알아보자. 1. URL 매핑 형식 지원 - 백엔드에서 URL을 매핑하는 작업은 굉장히 중요한 작업이다. - 매핑 URL에 오타가 있다면 완전히 다른 주소가 되기 때문이다. @RequestMapping("/springmvc/view") @ReqeustMapping("/springmvc/view/") - 사실 "/springmvc/view"와 "/springmvc/view/"는 엄연히 다른 URL이다. - 그러나 Spring Boot에서는 위의 예시에 나온 URL을.. 2022. 3. 10.
12. Annotation 기반의 Spring MVC 0. 개요 - 직접 Front Controller를 구현했을 때를 생각해보자. - Front Controller를 시작으로 HandlerMapping, HandlerAdapter를 직접 구현했다. - 그러므로 전체적인 Front Controller의 흐름을 직접 구현했다. - Spring Boot를 사용하면 이를 직접 구현하지 않는다. - Spring Boot 내부에는 이미 모든 것이 구현되어 있기 때문이다. - 그렇다면 내부적으로 구현된 클래스 또는 인터페이스들을 어떻게 사용할까? - 더불어 DispatcherServlet의 내부 동작 과정에 어떻게 컨트롤러를 전달(주입)할 수 있을까? → 내부 동작 과정이란, 이전 포스팅에서 다룬 DispatcherServlet의 동작원리를 의미한다. - 그 해답은 .. 2022. 3. 9.
11. Spring MVC의 특징 0. 개요 - 이전 포스팅에서 Adapter 패턴에 대해 이야기하며, 최종적인 Front Controller의 구조를 알아보았다. - 이를 기반한 Spring MVC는 어떤 특징을 가지며, 어떤 차이점이 있는지 알아보도록 하자. * 본 포스팅은 Front Controller 시리즈의 내용입니다. 이전 포스팅을 읽는 것을 권장합니다. 1. Spring MVC의 특징 a) 명칭의 차이 - Spring MVC는 Front Controller를 기반한다. - 그러나 각 컴포넌트의 명칭의 차이가 존재한다. - 다음 우측의 명칭들이 Spring MVC에서 사용하는 명칭이다. 1. Font Controller → DispatcherServlet 2. HandlerMappingMap → HandlerMapping(인터.. 2022. 3. 8.