Spring MVC ControllerClassNameHandlerMappingの例
Spring MVCでは、ControllerClassNameHandlerMappingは規約を使用して、要求されたURLをコントローラーにマップします(設定より規約)。 クラス名を取り、存在する場合は「Controller」サフィックスを削除し、小文字で先頭に「/」が付いた残りのテキストを返します。
このControllerClassNameHandlerMapping
クラスの使用法を示すために、以下のいくつかの例を参照してください。
1. 前後
デフォルトでは、Spring MVCはBeanNameUrlHandlerMapping
ハンドラーマッピングを使用しています。
ControllerClassNameHandlerMappingを有効にするには、Bean構成ファイルで宣言し、次にthe controller’s bean’s name is no longer requiredを宣言します。
現在、Spring MVCは次の規則に従って要求されたURLをマッピングしています:
WelcomeController -> /welcome* HelloGuestController -> /helloguest*
-
/welcome.htm –> WelcomeController。
-
/welcomeHome.htm –> WelcomeController。
-
/helloguest.htm –> HelloGuestController。
-
/helloguest12345.htm –> HelloGuestController。
-
/helloGuest.htm、/helloguest *のマッピングに失敗しました。「g」の場合は、一致しません。
2. 大文字と小文字を区別
上記の大文字と小文字を区別する問題を解決するには、「caseSensitive」プロパティを宣言し、trueに設定します。
現在、Spring MVCは次の規則に従って要求されたURLをマッピングしています。
WelcomeController -> /welcome* HelloGuestController -> /helloGuest*
-
/helloGuest.htm –> HelloGuestController。
-
/helloguest.htm、「/helloGuest*」のマッピングに失敗しました。「G」の場合は一致しません。
3. pathPrefix
さらに、「pathPrefix」プロパティとして宣言された、要求されたURLをマップするプレフィックスを指定できます。
現在、Spring MVCは次の規則に従って要求されたURLをマッピングしています。
WelcomeController -> /customer/welcome* HelloGuestController -> /customer/helloGuest*
-
/customer/welcome.htm –> WelcomeController.
-
/customer/helloGuest.htm –> HelloGuestController.
-
/welcome.htm、失敗しました。
-
/helloGuest.htm、失敗しました。