[Spring]5. Spring MVC 설정하기.

- 스프링 mvc 프로젝트는 2개의 xml파일이 필요하다.

보통의 pojo객체를 관리하는 bean관리 xml, M

컨트롤러 bean을 관리하기 위한 xml. C


- 자바 빈 객체를 관리하는 xml은 톰캣 서버가 실행 될때 같이 실행 되어야 한다.

즉, 서버 실행과 동시에 spring 컨테이너가 같이 실행 되어야 한다.


- 서버가 실행 될 때를 감지하는 리스너와 spring bean 설정파일이 필요하다.

리스너는 스프링 라이브러리 안에 존재 하며, spring bean xml파일과 web.xml에 등록을 해야 한다.



1. 프로젝트에 스프링 라이브러리를 추가한다.


1-1. 일반적인 다이나믹 웹 프로젝트를 생성.



1-2. /WEB-INF/lib 폴더에 스프링 라이브러리를 추가.

- 스프링을 사용하려면 logging 라이브러리가 필요하다.





2. web.xml에 스프링 라이브러리 안에 있는 리스너와 프론트 서블릿을 추가한다.


2-1. 리스너를 추가한다.

- 리스너를 추가하는 이유는 스프링의 자바 빈을 관리하는 xml파일을 서버가 실행 할때 같이 로딩 시키기 위함.


-web.xml에 등록해야할 리스너와 xml설정파일 위치.
1
2
3
4
5
6
7
8
<listener>
      <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
 
<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext.xml</param-value>
</context-param>

- 이 코드의 뜻은 이렇다.

* 서버 웹 어플리케이션안의 contextConfigLocation라는 변수에 /WEB-INF/applicationContext.xml를 넣는다.

* 서버가 실행할 때 ContextLoaderListener리스너가 실행 된다.

* 리스너는 contextConfigLocation변수 안에 존재하는

 설정 파일 패스와 이름을 호출하여 (/WEB-INF/applicationContext.xml 파일을 호출하여) 스프링 컨테이너를 실행 하게 된다.



2-2. 리스너가 로딩할 xml설정 파일을 만든다.

- 이름이 딱 정해진 것이 아니다. param-value에 자기가 정한대로 넣으면 된다.



- 스키마로 네임 스페이스를 정하는데 여기까진 beans, context를 추가 하면 된다.

나중에 더 추가 할 수 있다.




2-3. 프론트 서블릿을 추가한다. 

- 톰캣에서 만들어진 서블릿 기능을 스프링에서 만든 서블릿으로 위임하기 위함이다.


-web.xml에 등록해야 할 서블릿.

1
2
3
4
5
6
7
8
9
  <servlet>
    <servlet-name>mvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>mvc</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

-모든 .do가 붙은 요청은 이 서블릿이 받는다.


2-4. 서블릿이 사용할 xml 설정 파일을 만든다.

- 이 설정 파일에는 C, Controller bean을 관리한다.

- 반드시 위에서 지정한 servlet-name에 "-servlet.xml"라는 이름으로 파일을 만들어야 한다.

"mvc-servlet.xml"







댓글()