[Spring MVC RESTful] RESTful URL패턴 사용하며 css, js, img 등 리소스는 default 서블릿에 할당하는 방법

  Spring RESTful을 사용하기 위해 /로 지정하고 다 잘 돌아가는 듯 싶었으나 /css, /js, /img 디렉터리에서 로딩을 하지 못 한다면?

하나하나 @RequestMapping으로 지정하는 것도 방법이 될 수 있겠으나, 더 간단하게 web.xml에서 해결하는 방법이 있었다.
    <servlet>
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/config/spring/context-*.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
        <url-pattern>*.js</url-pattern>
        <url-pattern>*.jpg</url-pattern>
        <url-pattern>*.png</url-pattern>
        <url-pattern>*.gif</url-pattern>
    </servlet-mapping>

  위와 같이 css, js, jpg, png, gif... 등 원하는 확장자를 default 서블릿에 할당해주면 해당 확장자에 해당하는 URL 요청이 들어올 때 default 서블릿에 매칭돼 더이상 RequestMapping 관련 오류를 겪지 않을 수 있다.

  참고: http://redine07.tistory.com/143

댓글

이 블로그의 인기 게시물

C# 남아도는 메모리에도 불구하고 OutOfMemoryException이 발생한다면?

USB를 뒤는 괜찮은데 앞에 꽂으면 인식이 힘들다?

MySQL 데이터 타입과 Java 데이터 타입 비교/매칭