Spring/MVC (23) 썸네일형 리스트형 Dispatcher Servlet 2 디스패처 서블릿이 IOC container 와 어떻게 연결이 되어있는지? 하나를 봐보자면 빈에서 ViewResolver 관련된 애들을 모두 찾아온다. 그 담 viewResolver 목록에 넣어둔다 빈으로 만들어 둔 viewResolver가 없으면 기본 전략을 가져온다. 다른 초기화 메소드들도 마찬가지다 핸들러 맵핑 관련 빈 들을 모두 꺼낸다. 그 후 핸들러 맵핑들을 넣어준다. 여기서도 빈으로 만들어 둔 HanlderMapping 이 없다면 기본 전략을 사용하게 된다 그럼 이제 디스패처 서블릿에서 사용하는 자바 설정파일에서 빈 객체를 만들어 보자 맨 위에 디스패처 전략들을 초기화하는 부분에서 뷰 리조버 쪽을 타고 가보면 빈으로 설정한 뷰리조버가 들어가있는걸 볼 수 있다. Dispatcher Servlet Dispatcher Servlet 의 동작원리 어떻게 dispatcher servlet 을 사용하면 핸들러를 annotation 기반으로 쓸 수 있느냐 에 대해서 알아보자 Dispatcher Servlet 의 doDispatch 메소드가 있다. 대표적인 기능으로는 요청을 분석을 해서 멀티파트 요청인지 로케일은 어떤건지 ,뭐 테마는 어떤건지를 판단을 한다 핸들러를 찾아오는 부분인데 이 요청을 처리 할 수 있는 핸들러를 찾아오는 부분 핸들러들 중에서 이 요청을 처리할 수 있는 핸들러가 있는지를 확인한다. 안으로 들어가보면 이 디스패처가 들고있는 핸들러들 중에서 실질적으로 RequestMappingHandlerMapping 이 우리가 사용하는 어노테이션 뭐 getMapping postMapping 등으로 지정.. 스프링 MVC 연동 Dispatcher Servlet 스프링 MVC 의 가장 핵심적인 클래스인 Dispatcher Servlet 을 알아보자 이 전 글에서는 ContextLoaderListener 를 사용해서 스프링이 제공하는 IOC 컨테이너를 사용하는 방법을 알아봤음 (여기까지는 MVC 가 아니다 ) 이제는 서블릿을 직접 만드는 대신에 핸들러를 이런식으로 쓰고 싶다. MVC 를 쓰려면 이런 핸들러 쪽으로 dispatch 해줄 수 있는 그리고 이런 어노테이션을 이해하고 또한 http 를 return 하는 디스패처 서블릿 을 써야한다. 이전 방식에서는 servlet 들을 하나하나 등록을 해서 사용을 했다. 그걸 지우고 dispatcher servlet 하나를 등록하자 web.xml 에 디스패처 서블릿을 등록한다. 이때 여기다.. 스프링 IOC 컨테이너 연동 서블릿에 스프링 넣어보기 스프링 사용한다는 이야기는 2가지의 경우에 해당 된다. 1. 스프링이 제공하는 IOC 컨테이너를 사용한다. 2. MVC 를 사용한다는 말 먼저 우리가 만든 서블릿에서 스프링이 제공하는 IOC 컨테이너를 활용하는 방법을 알아보자 webmvc 를 추가하게 되면 거기에 해당되는 디펜던시들이 같이 설치 되게 된다 이 후 web.xml 에 스프링이 제공해주는 리스너가 있다. ContextLoaderListener 를 추가 해준다 . 이게 해주는게 뭐냐면 application Context를 서블릿 애플리케이션에 생명주기에 맞춰서 바인딩 해주는 것 (웹 어플리케이션에 등록 되어 있는 서블릿들이 application Context를 사용 할 수 있도록 서블릿 컨텍스트에 등록해준다. 종료 될때.. 서블릿 리스너와 필터 Contents 서블릿 리스너 서블릿 필터 서블릿 리스너 리스너는 서블릿 컨테이너에서 발생하는 이벤트, 서블릿 라이프 사이클의 변화 라던가 여러가지 에트리뷰트에 변화라던가 세션에 변화 . 이런 여러가지 이벤트에 어떤 특정한 코드를 실행해야한다. 그럴 때 사용할 수 있는 개념 크게 서블릿 컨텍스트 수준의 이벤트와 세션 수준의 이벤트로 나눌 수 있다. 서블릿 리스너로 어떤걸 할 수 있냐면 서블릿 컨테이너가 구동(톰캣)이 될 때 db 커넥션을 맺고 그 db 커넥션을 이 서블릿 에플리케이션에서 만든 여러가지 서블릿에 제공할 수 있다. 또한 서블릿이 종료 될 때 db 커넥션을 정리 할 수 도 있다. 서블릿 필터는 어떤 요청이 서블릿에 doGet 메소드등 으로 바로 가게 되는데 doGet 으로 가기 전에 어떤 전처.. 서블릿 애플리케이션 Contents 서블릿이란? 서블릿의 특징 서블릿 컨테이너 서블릿의 생명주기 서블릿이란? MVC 의 기초부터 천천히 알아보도록 하자 스프링 MVC 는 서블릿 기반의 웹 을 쉽게 만들게 해주는 프레임 워크다 이 스프링 MVC 를 알기 위해선 먼저 서블릿에 대해서 알아봐야한다. 그럼 여기서 서블릿은 무엇이냐? JAVA EE 는 웹 애플리케이션 개발용 스펙과 API 를 제공하는데, 그 api 중 하나가 httpServelet 이다. 서블릿의 특징? 서블릿은 프로세스를 만들고 죽이는게 아니라 한 프로세스를 공유하는 스레드를 만들어서 요청을 처리한다. 서블릿 컨테이너란? 서블릿 스펙을 구현한 컨테이너다 톰캣등은 서블릿 컨테이너다 . 이 톰켓등 컨테이너들은 어떻게 서블릿을 초기화 하고 실행하고 사용해야하는지 서블릿.. 서블릿이란? 스프링을 알아보기 전에 서블릿이 뭔지 알아보기로 하자 Servlet 클라이언트가 요청을 하면 그에 대한 결과를 다시 전송 해줘야 하는데 , 이러한 역할을 하는 자바 프로그램이다 Spring MVC 도 Servelet Container 가 관리하는 Servelet 이다 Servelet Diagram 요약 Diagram 정적인 페이지만을 제공하는 웹서버가 , 동적인 데이터를 제공 하기 위해 도와주는 것이 서블릿이다! Servelet 특징 클라이언트의 요청에 대해 동적으로 작동하는 웹 어플리케이션 컴포넌트 html을 사용하여 요청에 응답한다. Java Thread를 이용하여 동작한다. MVC 패턴에서 Controller로 이용된다. HTTP 프로토콜 서비스를 지원하는 javax.servlet.http.Http.. 이전 1 2 3 다음