SpringMVC WEB 프로젝트 jsp에서 가져온 js, css 파일에서 경로 문제를 찾을 수 없습니다.

5031 단어
springMVC를 적용할 때 URL 맵을 설정할 때 다음과 같이 설정합니다
<servlet>
        <servlet-name>appServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>appServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

페이지에서 참조하는 JS CSS에서 찾을 수 없는 오류가 발생할 수 있습니다.
방법1: 웹에서.xml에 추가:
<servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.gif</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.jpg</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
        <servlet-name>default</servlet-name>
        <url-pattern>*.js</url-pattern>
    </servlet-mapping>

위와 같은 자원 파일에spring 필터를 사용하지 않음을 표시합니다
default는tomcat 설정의 servlet입니다. "DefaultServlet은 $CATALINA HOME/conf/web.xml에 정의되어 있으며, 설정 파일에 정의된 것은 Tomcat이 시작될 때 불러옵니다. 모든 웹 앱에 유효합니다. DefaultServlet은 Tomcat에서 디렉터리 목록 (Directory Listing) 을 주로 사용합니다."
<servlet> 
        <servlet-name>default</servlet-name> 
        <servlet-class> 
          org.apache.catalina.servlets.DefaultServlet 
        </servlet-class> 
        <init-param> 
            <param-name>debug</param-name> 
            <param-value>0</param-value> 
        </init-param> 
        <init-param> 
            <param-name>listings</param-name> 
            <param-value>true</param-value> 
        </init-param> 
        <load-on-startup>1</load-on-startup> 
    </servlet> 

... 

    <servlet-mapping> 
        <servlet-name>default</servlet-name> 
        <url-pattern>/</url-pattern> 
    </servlet-mapping>

일부 매개변수는 DefaultServlet의 동작을 제어합니다.또한 요청한 URL이/일 때, 즉 일치하지 않을 때 이 DefaultServlet을 터치합니다.
방법2:springmvc의resources 주석을 사용하여 정적 파일을 처리합니다
springmvc의 라벨은spring3.0.4는 정적 자원에 대한 접근을 위한 것이다.스프링 3.0.4 나올 때 스프링이 schema를 업데이트하지 않았기 때문에 설정 파일에서 탭을 찾을 수 없습니다. 이 질문은spring3.0.5에서 해결되었고 인터넷에도 다른 해결 방안이 많아서 저는 여기에 기록하지 않겠습니다.
우선springmvc를 사용하려면 servlet을 설정해야 합니다.웹에서.xml 중:
        <servlet>  
        <servlet-name>springMVC</servlet-name>  
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>  
        <load-on-startup>1</load-on-startup>  
        </servlet>  
      
        <servlet-mapping>  
            <servlet-name>springMVC</servlet-name>  
            <url-pattern>/</url-pattern>  
       </servlet-mapping>

이것은 정적 자원 파일을 가져오는 데 영향을 끼칠 수 있습니다. 그러면 정적 자원 가져오는 책임을 분류할 수 있는 탭이 필요합니다.
그래서 스프링 MVC에서 - servlet.xml 파일에는 다음 코드가 포함됩니다.
<?xml version="1.0" encoding="UTF-8"?>  
    <beans xmlns="http://www.springframework.org/schema/beans"    
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    
        xmlns:mvc="http://www.springframework.org/schema/mvc"  
        xsi:schemaLocation="http://www.springframework.org/schema/beans
 http://www.springframework.org/schema/beans/spring-beans-3.0.xsd     
        http://www.springframework.org/schema/mvc 
http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">     
      
        <mvc:resources mapping="/javascript/**" 
        location="/static_resources/javascript/"/>  
        <mvc:resources mapping="/styles/**" 
        location="/static_resources/css/"/>  
        <mvc:resources mapping="/images/**" 
        location="/static_resources/images/"/>  
        <mvc:default-servlet-handler />  
          
          
     <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">  
            <property name="prefix" value="/WEB-INF/views/"/>  
            <property name="suffix" value=".jsp"/>  
     </bean>  
      
    </beans>

여기에서 나의 모든 페이지가/styles/**로 인용된 자원을 볼 수 있습니다./staticresources/css에서 찾습니다.

좋은 웹페이지 즐겨찾기