Spring
REST API (RESTful API)
개념 REST 아키텍처 스타일의 제약 조건을 준수 RESTful 웹 서비스와 상호 작용할 수 있도록 하는 애플리케이션 프로그래밍 인터페이스(API 또는 웹 API) API(Application Programming Interface)란? 소비자에게 필요한 콘텐츠(호출)와 생산자에게 필요한 콘텐츠(응답)를 구성합니다. 예, 날씨 서비스용 API 사용자는 우편번호를 제공하고 생산자는 두 부분(첫 번째는 최고 기온, 두 번째는 최저 기온)으로 구성된 응답으로 답하도록 지정 목적 상호 작용하여 정보를 검색하거나 기능을 수행하고자 할 때 API는 사용자가 원하는 것을 시스템에 전달할 수 있게 지원하여 시스템이 이 요청을 이해하고 이행하도록 할 수 있습니다. 장점 API는 조직이 보안, 제어, 인증을 유지 관리(누..
[Spring] EventPublisher 를 알아보자
EventPublisher를 사용하여 알림 서비스를 만들 수 있다. 알림 서비스를 만들기 전에 EventPulisher에 대해 간단히 알아보자. ApplicationEventPublisher 는 ApplicationContext가 상속 받고 있는 인터페이스다. 해당 인터페이스를 사용하여 알림을 받는 간단 예제 코드를 만들어 볼 것이다. ApplicationEventPublisher 회원 가입이라는 이벤트가 발생 할 때 해당 이벤트를 받아 올 수 있다. MyEvent 클래스를 생성 이벤트 데이터로 가입자명 을 받을 것이다. public class MyEvent { private String createName; public MyEvent() {} public MyEvent(String createName)..
[스프링 웹 MVC 동작 원리] Dispatcher Servlet 동작 원리
👻 Dispatcher Servlet 동작 원리를 알아보자! Client에서 요청을 보내고 Dispatcher Servlet 이 요청을 분석하여 핸들러 매핑이 요청에 맞는 핸들러를 찾아줍니다. 찾은 핸들러를 실행할 수 있는 어뎁터를 찾습니다. 찾은 핸들러 어뎁터가 핸들러를 실행해주는 과정에서 핸들러의 리턴 값에 따라 처리 결과를 Dispatcher Servlet 에 읍답을 내리고 ViewResolber 를 호출하고 view 이름에 해당되면 view 를 찾아 출력해주고 응답을 내립니다. 예외 처리가 필요할 시 HandlerExceptionResolver 가 처리 하고 최종적으로 응답을 내보냅니다. 동작 원리를 그림으로 보면서 이해해 봅시다!. 참조 그림
[스프링 웹 MVC 동작 원리] Front Controller 가 무엇인가요?
👻 Front Controller 에 대해 알아보자! 기존 Servlet 방식은 Client 에서 요청이 Servlet Container로 가서 Servlet을 생성하고 Controller 를 실행 합니다. 기존 Servlet의 단점은 Url 이 다른 요청이 들어오면 Servlet 을 매번 다르게 생성해야 하는 문제가 있습니다. 이 단점을 보안하여 나온 방식이 Front Controller 입니다. Front Controller 는 모든 요청을 앞 단의 하나의 Controller 로 받고 받은 요청들을 해당 Handler 에 Dispatch 해줍니다. 이 기능은 Spring 에서 DispatcherServlet 으로 정의 하고 있습니다. 동작 원리를 그림으로 이해해 봅시다!.
[스프링 웹 MVC 동작 원리] Servlet 환경에서 Spring Ioc Container 활용
👻 Servlet 환경에서 Spring Ioc Container 를 활용해 보자! ConTextLoaderListener 를 배포 서술자에 설정하여 ServleContext 의 Life Cycle 에 맞춰 Spring Ioc 의 ApplicationContext 를 바인딩 해줍니다. 어떻게 ApplicationContext 를 생성할까요?? ContextLoaderListener 의 클래스 내부에 contextInitialized() 라는 메서드가 있는데 ServletContextEvent 를 인자로 받아 생성합니다.
[스프링 웹 MVC 동작 원리] ServletFilter 동작 원리
👻 ServletFilter 동작 원리에 대해 알아보자! ServletFilter 의 동작원리는 Servlet 에게 요청이 보내지기 전에 앞 단에서 전처리 과정을 거치는 과정을 거칩니다. 특징으로는 Chain 구조로 이루어져 있습니다. 즉, 순서가 있다는 것인데, 순서 설정은 배포 서술자 에서 설정이 가능합니다. 동작원리를 그림으로 이해해 봅시다!
[스프링 웹 MVC 동작 원리] ServletListener 동작 원리
ServletListener 동작 원리 👻 ServletListener 동작 원리에 대해 알아보자! ServletListener 는 Servlet의 이벤트를 감지하여 처리하는 역할을 합니다. ServletListener 을 사용하려면 배포 서술자에 ServletListener 을 설정 해야합니다. 동작 원리는 servlet 이 생성후 service() 기능이 실행되었을 때 이벤트를 감지하여 처리하고 Response object 로 응답을 내립니다. 그림으로 보고 이해해 봅시다!.
[스프링 웹 MVC 동작 원리] Servlet 동작 원리
👻 Servlet 동작 원리에 대해 알아보자! Servlet 이란 Client 에서 요청이 들어오면 그에 맞는 service 기능을 매핑 해줘야 하는데 이 기능을 하는 것이 Servlet 이라고 합니다. Servlet 은 ServletContainner 가 생성을 해주고 관리를 해줍니다. Client 가 자원을 관리하는 Server 에게 자원의 요청을 하면 Server 는 ServletContainner 에게 요청을 보냅니다. 이때 ServletContainner 에서는 Request object 와 Response object 가 생성이 되고 배포 서술자에 매핑된 Servlet 을 찾아 생성을 해줍니다. 다음으로 Service() 메서드가 실행되고 전송 방식에 따른 메서드가 호출 되면서 앞서 생성된 R..