Java_Spring Framework

Spring 3.0 + myBatis 설정파일 구조

anyjava 2013. 12. 2. 17:32


Spring Framework 를 사용하면서 설정파일에 대한 정확한 개념을 가지고 있지 못했던 것 같았다. 이번에 교육을 통해서 그동안 정확하게 머릿속에 정리되지 않았던 설정파일들에 대해 정리하고자 한다.

필자와 같이 Spring Framework 를 사용하면서 무조건 코딩만 해왔던 분이라면 한번쯤 읽어보면 어떨가 하고 추천해본다. 몸값 높은 개발자를 위하여! 재미있는 개발을 위하여!


1. 디렉토리 구조

  web server doocroot 폴더 구조의 일부를 보면 아래와 같다. WEB-INF 밑에는 컴파일된 class파일이 담겨져 있는 classes 폴더와 웹어플리케이션에서 사용하는 라이브러리들이 위치하는 lib 폴더가 대표적이다. 그리고 오늘 알아보려고 하는 dispater-servlet.xml, applicationContext.xml 도 함께 존재한다. ( 단, 앞에 언급한 두개의 xml 설정파일 명은 변경이 가능하다. 여기서는 일반적인 경우의 파일명을 사용하겠다.)

|ㅡ WEB-INF ㅡ web.xml

                   ㄴ dispatcher-servlet.xml

                   ㄴ applicationContext.xml


2. web.xml

  Spring Framework 를 위한 설정에서 가장 큰역할을 하는것이 Dispatcher Servlet을 등록하는 것이다. 과거에 서브릿을 공부할때와 동일하게 특정유형의 서블릿 요청을 특정 Dispatcher Servlet 이 처리 하도록 설정한다. 아래 예제를 참고하자.

<servlet>

    <servlet-name>dispatcher</servlet-name>

    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>

    <load-on-startup>1</load-on-startup>

</servlet> 

<servlet-mapping>

    <servlet-name>dispatcher</servlet-name>

    <url-patter>*.do</url-pattern>

</servlet-mapping>


3. ContextLoadListener 설정파일 ( applicationContext.xml )

  WAS( ex. tomcat )가 처음 기동할때 설정해야 되는 내용들을 주로 입력한다. 예를 들면 DB연결정보, Spring Framework 의 Service Bean, 데이터베이스를 핸들링하기위한 DAO Bean 들을 바인딩하는 설정들이 위치한다.

  즉, 서비스에 필요한 DB, DAO, Service 빈들을 불러온다고 생각하면 되겠다. 그럼 아래 예제 코드를 참고해 보자.


4. Spring MVC 환경파일 ( dispatcher-servlet.xml )

  WAS에 첫 요청( request ) 이 들어왔을 때, 불러진다고 이해하면 된다. ( 사실 tomcat이 기동될 때, 해당 설정파일을 읽어들여 유효성 검사를 하기는 한다. ) 그래서 요청에 필요한 계층에 해당하는 Bean들을 등록할 수 있도록 설정파일에 명시해 주면된다. 예를 들어 view, controller 계층에 해당하는 Bean 객체를 Scan하는 설정을 하도록 한다. 아래 예제를 보면 이해하는데 더 많은 도움이 될 것이다. 


반응형