SpringMVC の org.springframework.web.servlet.DispatcherServlet.noHandlerFound マッピング 404 エラーを完全に解決する

エラーの説明

このエラーの主な原因は、@Controller アノテーションで登録されたクラスのインスタンスを IOC コンテナにスキャンできないことであるため、以下の観点から分析できます。

  1. MVC 構成ファイル内: コンポーネントスキャンタグのスキャンパッケージパスが正しいかどうか、および @Controller アノテーションが誤って除外されているかどうか
  2. コントローラークラスのヘッダー宣言のアノテーションが org.springframework.stereotype.Controller パッケージの内容であるかどうか
  3. <mvc:annotation-config /> の代わりに <mvc:annotation-driven /> タグを使用して、MVC で共通のアノテーションを自動的に宣言します

上記の問題の解析が完了したら、再度テストしてください。それでも 404 が発生する場合は、以下の問題を確認してください。
現時点では、問題はスキャンの問題ではなく、@RequestMapping パスの問題である可能性があります。パスが正しいかどうかを確認してください。

上記の内容を踏まえると問題は解決するはずですが、それでもマッピングできない場合は、web.xml設定ファイルのspringmvc設定ファイルの読み込みとフロントコントローラの読み込みタイミングが適切か確認してください。

<!-- 配置前端控制器 -->
    <servlet>
        <servlet-name>dispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 当前端控制器加载时要加载springMVC配置文件 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:spring.xml</param-value>
        </init-param>
        <!-- 让前端控制器Servlet在项目启动加载阶段就进行实例 -->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>dispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

みなさん、ありがとうございます、気に入っていただけましたら、高評価とサポートをよろしくお願いします。これからも Java フルスタック開発コースのコンテンツを公開していきますので、みなさん〜 kowtow

おすすめ

転載: blog.csdn.net/gjb760662328/article/details/129175873