
url-pattern을 /* 로 하면 어떤 url도 예외없이 Dispatcher라고 하는 프론트컨트롤러가 다 받게 하겠다는 뜻. 어떤 url도 Dispatcher가 허락하지 않으면 절대로 반환되는 게 없음.
(<-> url-pattern을 /로 하면 모든 url이 그냥 통과됨.)

url-pattern을 위와 같이 고치면 이렇게 오류화면이 뜬다.

Dispatcher을 Servlet 으로 설정한 것이고 모든 url에 대해서 Dispatcher가 받게 하겠다고 web.xml에 설정함. 그리고 index.jsp에서 요청이 왔고 Dispatcher에서 적절한 url에 맞는 resource를 배분해 줘야 하는데 못하고 있음. 그래서 오류가 난 것. 따라서 spring이 갖고 있는 mapping정보가 필요한데 -servlet.xml이 그 정보를 가지고 있음. (은 사용자가 지정한 Dispatcher이름. 나는 dispatcher라고 설정했고 aa라고 설정했으면 aa-servlet.xml. 뒤의 servlet.xml은 예약된 이름.) 이 파일이 약속된 위치에 있어야함. 기본위치는 WEB-INFO아래에 있음.

여기서도 dispatcher-servlet.xml이 없어서 오류가 떴다고 뜬다.
spring이 제공하는 MVC를 지원하는 라이브러리, Dispatcher library가 사용하는 설정파일 : dipatcher-servlet.xml

Dispatcher(forwarding)를 하기 위한 ModelAndView를 제공.

model에 data를 담아 전달

Controller에서 Dispatcher에 model과 view 전달. 디스패처에서 view에 해당하는 jsp를 찾아 model을 전달. 데이터가 사용자에게 보여짐.

ModelAndView를 설정할 때 /WEB-INF/폴더명/, .jsp를 쓰는 것이 귀찮음. 그래서 IoC 컨테이너에 bean을 생성해서 자바파일에서 파일명만 쓸 수 있도록 설정해줌.

관련 bean을 생성하지 않고 그냥 파일명만 쓰면 왼쪽과 같이 오류가 남. index가 자기 자신을 요청하는 무한루프에 빠짐

dispatcher-servlet.xml에 bean을 생성해주니 연결이 잘 되었다.
20220811