Spring mvc의 웹을 자세히 설명합니다.xml 설정 설명

4666 단어 springmvcweb.xml
웹을 설명하고 있습니다.xml 설정을 하기 전에 설정해야 할 설정 항목의 작용을 알아보겠습니다.
1. 감청기(listener)
이벤트 감청, js에서 광범위하게 응용되고 각종 이벤트 함수의 실현, 안드로이드와javase도 광범위하게 응용되고 각종 클릭 이벤트의 감청이다.어떤 사건을 촉발할 때, 이 사건에 감청된 모든 감청기를 촉발합니다.스프링의org.springframework.web.context.ContextLoaderListener 는 바로 Servlet Context Listener 인터페이스를 실현한 감청기입니다. 이 감청기는 용기(tomcat,jetty)가 시작될 때 터치한 다음spring에 해당하는 설정 정보를 시작할 수 있습니다.
2. 필터(filter)
하나의 HTTP 요청은 브라우저 클라이언트와 서버의 상호작용이다. 이번 상호작용에서 브라우저가 서버에 데이터를 보내는 과정, 그리고 서버가 요청 데이터를 받은 후에 처리 결과를 되돌리는 과정, 결과가 성공하면 HTTP 요청을 한 번 완성한다(그 중의 악수, 루트 등은 자세히 말하지 않는다).브라우저와 서버가 한 번 오는 과정에서 우리는 요청 데이터 인코딩 방식을 통일시키고 IP 검사,session 검사 등 관련 servlet 처리 전의 작업을 추가할 수 있으며 servlet 처리 후 브라우저 클라이언트에게 응답하는 과정에서 필터 작업을 할 수 있다.spring의 org.springframework.web.filter.CharacterEncodingFilter는 필터입니다. servlet에 요청하기 전에 요청 인코딩을 <param-value>UTF-8</param-value>에서 설정한 인코딩 방식으로 변환합니다. 필터의 경로는 Filter-mapping의 URL-pattern 설정 경로입니다.
3. 요청 처리(servlet)
웹 기반 HTTP 요청 경로xml 설정의 차단 경로가 일치하면 상응하는 servlet 처리(처리하기 전에 설정된 필터 처리)가 됩니다. 이 servlet에서 요청한 데이터 정보를 얻을 수 있고 상응하는 처리를 하고 처리가 끝난 후에 브라우저에 응답합니다.스프링의 org.springframework.web.servlet.DispatcherServlet는 바로 servlet입니다. 그러나 이 servlet은spring이 자체적으로 실현한 것입니다. 이 처리 요청 경로는 servlet-mapping 아래의 URL-pattern에서 설정됩니다. 설정이 완료되면 이 설정이 차단된 모든 요청을spring의 Dispatcher Servlet에 맡기고 처리합니다. 이spring 핵심의 servlet은 하나의 루트의 역할로 이해합니다.차단된 요청은 요청 경로와 요청 방식에 따라 더 나누어지고spring의 @Controller 아래 @RequestMapping(value={"/xxx"}, method=RequestMethod.xox ) 방법으로 처리됩니다.
자세한 구성은 다음과 같습니다.
4. 스프링 용기의 초기화

<!--   -->
<context-param>
   <param-name>contextConfigLocation</param-name>
   <!-- spring  ,  spring   -->
    <param-value>classpath*:spring/spring-config.xml</param-value>
</context-param>
<!-- spring  ,  spring -->
<listener>
   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-   class>
</listener>
스프링의 상하문 감청기 설정ContextLoaderListenerServletContextListener 인터페이스를 실현하고 용기가 불러올 때spring 용기를 시작합니다.ServletContextListener 방법에서spring 용기를 초기화합니다.웹을 통해spring 용기를 불러올 수 있는 몇 가지 방법이 있습니다.xml의 contextInitialized 탭에서spring의 응용 프로그램 Context를 설정합니다.xml 경로, 파일 이름은 임의로 찾을 수 있으며, 설정이 없으면/WEB-INF/경로에서 기본 응용 프로그램Context를 찾습니다.xml 파일.
5.spring 용기의 핵심 servlet, 차단 요청 경로

<!-- spring  , ,  -->
<servlet>
   <servlet-name>dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
     <param-name>contextConfigLocation</param-name>
       <param-value>/META-INF/spring-servlet.xml</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
   <servlet-name>dispatcher</servlet-name>
   <!-- -->
   <url-pattern>/</url-pattern>
</servlet-mapping>
스프링의 핵심 servlet 설정입니다. 이 servlet은 여기서 차단된 경로를spring의 controller 차단된 경로로 전송하여 처리합니다. 이 servlet은spring의 루트 중심에 해당합니다.spring 차단된 요청에 대응하는 전송을 처리합니다.
6,spring 인코딩 필터

<!-- spring   -->
<filter>
   <filter-name>characterEncodingFilter</filter-name>
   <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
   <init-param>
     <param-name>encoding</param-name>
     <param-value>UTF-8</param-value>
   </init-param>
   <init-param>
     <param-name>forceEncoding</param-name>
     <param-value>true</param-value>
   </init-param>
</filter>
<!--   -->
<filter-mapping>
   <filter-name>characterEncodingFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>
spring의 인코딩 필터, 이 필터가 설정한 경로의 데이터 형식을 인코딩합니다
7. url-pattern 설정 설명
servlet과 filter에서 우리는 url-pattern을 설정해야 하지만, 이 설정의 해석 규칙이 몇 가지가 있는지 우리는 다음에 상세하게 이야기합시다.
1. 정확한 일치: 예:/xxx.html는 xxx만 일치합니다.html.
2. 경로 일치: 예를 들어/xxx/는 xxx를 접두사로 하는 URL과 일치합니다.
3. 접미사 일치: 예.html는 html을 접두사로 하는 모든 URL과 일치합니다.
그러나 URL-pattern의 일치에 있어 충돌이 발생할 수 있습니다. 이 경우 우선순위를 정해야 합니다. 상기 세 가지 우선순위는 정확한 일치 > 경로 일치 > 접두사 일치입니다.
이상은 본문의 전체 내용입니다. 여러분의 학습에 도움이 되고 저희를 많이 응원해 주십시오.

좋은 웹페이지 즐겨찾기