public class SimpleUrlHandlerMapping extends AbstractUrlHandlerMapping
HandlerMapping
インターフェースの実装。Bean インスタンスへのマッピングと Bean 名へのマッピングの両方をサポートします。後者は、非シングルトンハンドラーに必要です。"urlMap" プロパティは、XML Bean 定義のマップ要素などを介して、ハンドラーマップに Bean 参照を設定するのに適しています。
Bean 名へのマッピングは、次のように、java.util.Properties
クラスで受け入れられる形式で "mappings" プロパティを介して設定できます。
/welcome.html=ticketController /show.html=ticketController
構文は PATH=HANDLER_BEAN_NAME
です。パスがスラッシュで始まらない場合は、スラッシュが先頭に追加されます。
直接一致 (指定された "/test" -> 登録済み "/test") および "*" パターン一致 (指定された "/test" -> 登録済み "/t*") をサポートします。デフォルトでは、該当する場合、現在のサーブレットマッピング内でマッピングされることに注意してください。"alwaysUseFullPath"
プロパティを参照してください。パターンオプションの詳細については、AntPathMatcher
javadoc を参照してください。
setMappings(java.util.Properties)
, setUrlMap(java.util.Map<java.lang.String, ?>)
, BeanNameUrlHandlerMapping
logger
BEST_MATCHING_PATTERN_ATTRIBUTE, INTROSPECT_TYPE_LEVEL_MAPPING, MATRIX_VARIABLES_ATTRIBUTE, PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE, PRODUCIBLE_MEDIA_TYPES_ATTRIBUTE, URI_TEMPLATE_VARIABLES_ATTRIBUTE
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターと説明 |
---|
SimpleUrlHandlerMapping() |
修飾子と型 | メソッドと説明 |
---|---|
MapSE<StringSE,?> | getUrlMap() 特定のエントリを追加または上書きするオプションを使用して、URL パスマッピングへのマップアクセスを許可します。 |
void | initApplicationContext() スーパークラスの初期化に加えて、 registerHandlers(java.util.Map<java.lang.String, java.lang.Object>) メソッドを呼び出します。 |
protected void | registerHandlers(MapSE<StringSE, ObjectSE> urlMap) 対応するパスの URL マップで指定されたすべてのハンドラーを登録します。 |
void | setMappings(PropertiesSE mappings) URL パスをハンドラー Bean 名にマップします。 |
void | setUrlMap(MapSE<StringSE,?> urlMap) キーとして URL パス、値としてハンドラー Bean(またはハンドラー Bean 名)を使用してマップを設定します。 |
buildPathExposingHandler, exposePathWithinMapping, exposeUriTemplateVariables, getHandlerInternal, getHandlerMap, getRootHandler, lookupHandler, match, registerHandler, registerHandler, setLazyInitHandlers, setRootHandler, setUseTrailingSlashMatch, supportsTypeLevelMappings, useTrailingSlashMatch, validateHandler
adaptInterceptor, detectMappedInterceptors, extendInterceptors, getAdaptedInterceptors, getCorsConfiguration, getCorsConfigurations, getCorsHandlerExecutionChain, getCorsProcessor, getDefaultHandler, getHandler, getHandlerExecutionChain, getMappedInterceptors, getOrder, getPathMatcher, getUrlPathHelper, initInterceptors, setAlwaysUseFullPath, setCorsConfigurations, setCorsProcessor, setDefaultHandler, setInterceptors, setOrder, setPathMatcher, setRemoveSemicolonContent, setUrlDecode, setUrlPathHelper
getServletContext, getTempDir, getWebApplicationContext, initApplicationContext, initServletContext, isContextRequired, setServletContext
getApplicationContext, getMessageSourceAccessor, obtainApplicationContext, requiredContextClass, setApplicationContext
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
getHandler
public void setMappings(PropertiesSE mappings)
直接 URL 一致と Ant スタイルのパターン一致をサポートします。構文の詳細については、AntPathMatcher
javadoc を参照してください。
mappings
- キーとして URL、値として Bean 名を持つプロパティ setUrlMap(java.util.Map<java.lang.String, ?>)
public void setUrlMap(MapSE<StringSE,?> urlMap)
直接 URL 一致と Ant スタイルのパターン一致をサポートします。構文の詳細については、AntPathMatcher
javadoc を参照してください。
urlMap
- キーとしての URL と値としての Bean でマップする setMappings(java.util.Properties)
public MapSE<StringSE,?> getUrlMap()
たとえば "urlMap [myKey]" を介してエントリを直接指定するのに便利です。これは、子 Bean 定義のエントリを追加または上書きする場合に特に役立ちます。
public void initApplicationContext() throws BeansException
registerHandlers(java.util.Map<java.lang.String, java.lang.Object>)
メソッドを呼び出します。AbstractHandlerMapping
の initApplicationContext
ApplicationContextException
- 初期化エラーの場合 BeansException
- ApplicationContext メソッドによってスローされた場合 AbstractHandlerMapping.extendInterceptors(java.util.List)
, AbstractHandlerMapping.initInterceptors()
protected void registerHandlers(MapSE<StringSE,ObjectSE> urlMap) throws BeansException
urlMap
- URL パスをキーとして、ハンドラー Bean または Bean 名を値としてマップします。BeansException
- ハンドラーを登録できなかった場合 IllegalStateExceptionSE
- 競合するハンドラーが登録されている場合