SpringMVC에서 정적 리소스에 액세스하는 세 가지 방법
목적: 정적 파일을 찾을 수 없으면 정적 파일에 정상적으로 접근할 수 있습니다.
방안 1: 정적 파일을 처리하기 위해 Tomcat의 defaultServlet을 활성화합니다
<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>
<servlet-mapping>
<servlet-name>default</servlet-name>
<url-pattern>*.css</url-pattern>
</servlet-mapping>
여러 개의 파일을 구성하려면 각 파일을 하나씩 구성합니다.Dispatcher Servlet 앞에 써서 default Servlet을 먼저 차단하면 스프링에 들어가지 않을 거예요. 성능이 제일 좋은 것 같아요.
mvc:resources 사용 방법:
<!-- -->
<mvc:resources mapping="/images/**" location="/images/" />
/images/**는 ResourceHttpRequestHandler에 매핑되어 처리되며 location은 정적 자원의 위치를 지정합니다.웹 응용 프로그램 루트 디렉터리에 있는jar 패키지에 정적 자원을 압축할 수 있습니다.cache-period는 정적 자원을 웹cache로 만들 수 있습니다다음 오류가 발생하면
오류 알림: DispatcherServlet의 URI [/mvc/user/findUser/lisi/770] 및 이름'springMVC'로 HTTP 요청에 대한 매핑이 없습니다.
또 주의해야 할 점은 Simple UrlHandler Mapping에 default Handler를 설정하지 말라는 것이다.static uri에 대한 defaultHandler가 ResourceHttpRequestHandler이기 때문에 그렇지 않으면 static resources request를 처리할 수 없습니다.
시나리오 3,
<mvc:default-servlet-handler/>
"/**"url을 SimpleUrlHandlerMapping의 urlMap에 등록하고 정적 자원에 대한 접근을 HandlerMapping에서 org로 이동합니다.springframework.web.servlet.resource.DefaultServletHttpRequestHandler 처리 및 반환.Default ServletHttpRequestHandler 사용은 각 Servlet 용기의 기본 Servlet입니다.
추가 설명: 여러 HandlerMapping의 실행 순서 문제:
DefaultAnnotationHandlerMapping의 order 속성 값은: 0
스프링은order값이 비교적 작은 것을 먼저 실행합니다.a.jpg 그림 파일에 접근할 때 Default Annotation Handler Mapping을 통해 프로세서를 찾으십시오. 찾을 수 없을 것입니다. 우리는 a.jpg라는 Action이 없습니다.마지막 Simple UrlHandler Mapping은 "/**"와 일치하기 때문에 반드시 일치하고 그림에 응답합니다.
그림을 방문하고 겹겹이 일치해야 합니다.성능이 어떤지 정말 모르겠습니다.다음에 스트레스 테스트를 해서 아파치와 비교해 보자.
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
thymeleaf로 HTML 페이지를 동적으로 만듭니다 (spring + gradle)지난번에는 에서 화면에 HTML을 표시했습니다. 이번에는 화면을 동적으로 움직여보고 싶기 때문에 입력한 문자를 화면에 표시시키고 싶습니다. 초보자의 비망록이므로 이상한 점 등 있으면 지적 받을 수 있으면 기쁩니다! ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.