우리가 쓸 녀석
org.springframework.web.servlet.DispatcherServlet.class
스프링이 제공하는 프론트 컨트롤러
Dispatcher-servlet.xml
web.xml 에다가 url 맵핑
프론트 컨트롤러가 모든 url 요청을 받고 POJO 클래스를 선택
in web.xml
<servlet>
<servlet-name>dispatch</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>dispatch</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
프론트 컨트롤러가 매핑 해주지 않은 url 은 나오면 안됨.
그치만 index.jsp 를 키고 실행시키면
화면이 나오는 것을 볼 수 있다. 프론트 컨트롤러가 처리해 주지 않았는데 화면이 뜨는 것은 정상적이지 못한 것이다.
/* 모든 url을 검사하겠다 라는 설정을 하고 다시 index.jsp 를 실행시키면
라는 오류와 함께 화면이 실행되지 않는다,.
IOException parsing XML document from ServletContext resource [/WEB-INF/dispatch-servlet.xml] 가 없다는 소리임
*-servlet.xml
url-mapping 정보를 갖고 있음
WEB-INFO/servelt 이름으로 매핑해놨던 정보와 함게
web.xml 위치에 dispatch-servlet.xml를 생성함
dispatch-servlet.xml에는
스프링이 사용할 수 있는 설정들,
https://docs.spring.io/spring-framework/docs/
// in dispatch-servlet.xml
// 이녀석이 컨테이너에 담김
// id 는 사용자가 요창한 url
// 사용자가 url을 요청하면 container에서 id가 url 과 맞는 것을 찾고
// class 에 지정해놓은 녀석을 객체화 해서 호출해준다
<bean id="/index" class="webprj2.web.contoller.IndexController">
<!-- collaborators and configuration for this bean go here -->
</bean>