Spring MVC 의 Dispatcher Servlet동력 노드 자바 대학 정리
3202 단어 SpringMVCDispatcherServlet
Spring MVC 를 사용 하여 Dispatcher Servlet 를 설정 하 는 것 이 첫 번 째 단계 입 니 다.
Dispatcher Servlet 은 하나의 Servlet 이기 때문에 여러 개의 Dispatcher Servlet 을 설정 할 수 있 습 니 다.
Dispatcher Servlet 은 웹.xml 파일 에 설 치 된 사전 컨트롤 러 입 니 다.일치 하 는 요청 을 차단 합 니 다.Servlet 차단 규칙 은 스스로 정의 하고 차단 한 요청 을 특정한 규칙 에 따라 목표 Controller(우리 가 쓴 Action)에 나 누 어 처리 해 야 합 니 다.
"어떤 규칙":당신 이 어떤 Handler Mapping 인 터 페 이 스 를 사 용 했 는 지 에 따라 실현 류 가 다 릅 니 다.
먼저 첫 번 째 예 를 보 겠 습 니 다.
<web-app>
<servlet>
<servlet-name>example</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>example</servlet-name>
<url-pattern>*.form</url-pattern>
</servlet-mapping>
</web-app>
Dispatcher Servlet 초기 화 과정 에서 프레임 워 크 는 웹 에 응 용 된 WEB-INF 폴 더 에서[servlet-name]-servlet.xml 이라는 프로필 을 찾 아 파일 에 정 의 된 bean 을 생 성 합 니 다.
두 번 째 예:
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:/springMVC.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
프로필 의 파일 이름 을 가리 키 며 기본 프로필 이름 대신 springMVC.xml 프로필 을 사용 합 니 다.그 중에서 도
1.쓰 지 않 고 기본 값 사용:/WEB-INF/
2、
3、
4.여러 개의 값 을 쉼표 로 구분한다.
Servlet 차단 일치 규칙 은 스스로 정의 할 수 있 습 니 다.어떤 URL 을 차단 하 는 것 이 적당 합 니까?
@RequestMapping("/user/add")으로 비 추 면 다음 과 같 습 니 다.
1.차단*.do,*.htm,예 를 들 어/user/add.do
이것 은 가장 전통 적 인 방식 으로 가장 간단 하고 실 용적 이다.정적 파일(jpg,js,css)이 차단 되 지 않 습 니 다.
2.차단/,예:/user/add
현재 유행 하 는 REST 스타일 을 구현 할 수 있 습 니 다.많은 인터넷 유형의 응용 프로그램 들 이 이런 스타일 의 URL 을 매우 좋아한다.
단점:정적 파일(jpg,js,css)이 차단 되 어 정상적으로 표시 되 지 않 습 니 다.REST 스타일 을 이 루 려 면 일이 좀 번 거 롭 습 니 다.뒤에 해결 방법 이 있 으 니 그런대로 간단 한 편 이다.
3.차단/*,이것 은 잘못된 방식 입 니 다.Action 에 접근 할 수 있 지만 jsp 로 이동 할 때 다시 차단 되 어 jsp 에 접근 할 수 없습니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
[MeU] Hashtag 기능 개발➡️ 기존 Tag 테이블에 존재하지 않는 해시태그라면 Tag , tagPostMapping 테이블에 모두 추가 ➡️ 기존에 존재하는 해시태그라면, tagPostMapping 테이블에만 추가 이후에 개발할 태그 기반 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.