스프링 자동 스캔과 관련하여 제어 레이어에서 주석 구성 @controller는 오류없이 프로젝트를 성공적으로 시작하는 데 사용됩니다. 그러나 페이지가 리디렉션되면 해당 차단이 수행되지 않습니다. 전체 인터페이스는 기본 인터페이스에서 404로만 리디렉션 될 수 있습니다. 포스터가 처음으로 시도한 이래로 큰 원 이후에 처음으로 스캔 중에 MVC 컨트롤러가 성공하지 못했음을 확인했습니다. 자세한 내용은 코드를 참조하십시오.
<!-컨트롤러 주석 지원-> <context : component-scan base-package = "com.cjw.test.controller"use-default-filters = "false"> </context : component-scan> <!-컨트롤러 주석을 효과적으로 만듭니다-> <mvc : mvc : mvc : pongotation-driven /> <!-defaults-haller and the defaults and the defaultserver on the the defaulter and that the defaulter and wrante 요청 맵핑 처리없이-> <mvc : 기본-서비스 핸들러/>
그러나 페이지 리디렉션을 수행 할 때 컨트롤 레이어가 컨트롤러에 의해 스캔 할 때 다른 주석과 구별되지 않기 때문에 404는 항상보고됩니다. 수정 된 코드는 다음과 같습니다.
<!-컨트롤러 주석 지원-> <context : component-scan base-package = "com.cjw.test.controller"use-default-filters = "false"> <context : include filter type = "Annotation"expression = "org.springframework.steretype.controller"/> </context : component-scan>
동시에, 구성 항목을 더 간단하게 만들기 위해 포스터는 해당 구성을 별도로 제거하고 전체 기능의 시작 또는 점프에 미치는 영향을 관찰합니다.
<MVC : 주석 구동/>
나중에 나는 점프 할 수 없다는 것을 알았다. 마지막으로 그 이유는 다음과 같습니다.
최종 구성에 <mvc : annotation-driven/>가 없으면 모든 컨트롤러가 구문 분석되지 않을 수 있습니다. 요청이 있으면 요청이있을 때 일치하지 않는 모든 요청 클래스는 <mvc : default-servlet handler/>, 즉 기본 서플릿이 처리됩니다. <mvc : annotation-driven/>를 추가 한 후, 해당 요청은 컨트롤러에 의해 처리되며 해당 컨트롤러가 없기 때문에 기본 서플릿에 의해 정적 리소스가 처리됩니다. 요컨대, 해당 컨트롤러가 없으면 기본 서블릿으로 처리됩니다.
web.xml 구성은 정적 페이지 리디렉션을 사용하여 다음과 같습니다.
<servlet-mapping> <servlet-name> test </servlet-name> <Url-pattern>/</url-pattern> </servlet-mapping>
위는 편집기가 도입 한 스프링 MVC 주석 자동 스캔 실패의 원인 분석입니다. 궁금한 점이 있으면 메시지를 남겨 주시면 편집자가 제 시간에 답장을 드리겠습니다. Wulin.com 웹 사이트를 지원해 주셔서 대단히 감사합니다!