クラス GenericWebApplicationContext
- 実装されているすべてのインターフェース:
CloseableSE、AutoCloseableSE、BeanFactory、HierarchicalBeanFactory、ListableBeanFactory、BeanDefinitionRegistry、ApplicationContext、ApplicationEventPublisher、ConfigurableApplicationContext、Lifecycle、MessageSource、AliasRegistry、EnvironmentCapable、ResourceLoader、ResourcePatternResolver、ThemeSource、ConfigurableWebApplicationContext、WebApplicationContext
GenericApplicationContext のサブクラス。ConfigurableWebApplicationContext を実装しますが、web.xml での宣言的なセットアップを意図していません。代わりに、ネストされたコンテキストを構築したり、WebApplicationInitializers 内で使用したりするなど、プログラムによるセットアップ用に設計されています。
リソースパスをサーブレットコンテキストリソースとして、つまり Web アプリケーションルートのパスとして解釈します。絶対パス - たとえば、Web アプリのルート外のファイルの場合 - AbstractApplicationContext によって実装されているように、file: URL を介してアクセスできます。
AbstractApplicationContext によって検出された特別な Bean に加えて、このクラスはコンテキスト内で "themeSource" という名前の ThemeSource Bean を検出します。テーマのサポートは 6.0 以降非推奨となり、直接的な代替はありません。
アノテーション付きコンポーネントクラスを GenericWebApplicationContext に登録する場合は、次の例に示すように、AnnotatedBeanDefinitionReader を使用できます。コンポーネントクラスには、特に @Configuration クラスだけでなく、プレーンな @Component クラス、jakarta.inject アノテーションを使用する JSR-330 準拠のクラスも含まれます。
GenericWebApplicationContext context = new GenericWebApplicationContext(); AnnotatedBeanDefinitionReader reader = new AnnotatedBeanDefinitionReader(context); reader.register(AppConfig.class, UserController.class, UserRepository.class);
構成ファイルから Bean 定義を読み取る WebApplicationContext を実装する場合は、AbstractRefreshableWebApplicationContext から派生し、loadBeanDefinitions メソッドの実装で Bean 定義を読み取ることを検討してください。
- 導入:
- 1.2
- 作成者:
- Juergen Hoeller, Chris Beams, Sam Brannen
ネストされたクラスの要約
クラス org.springframework.core.io.DefaultResourceLoader から継承されたネストクラス / インターフェース
DefaultResourceLoader.ClassPathContextResourceフィールドのサマリー
クラス org.springframework.context.support.AbstractApplicationContext から継承されたフィールド
APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAMEインターフェース org.springframework.beans.factory.BeanFactory から継承されたフィールド
FACTORY_BEAN_PREFIXインターフェース org.springframework.context.ConfigurableApplicationContext から継承されたフィールド
APPLICATION_STARTUP_BEAN_NAME, CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SHUTDOWN_HOOK_THREAD_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAMEインターフェース org.springframework.web.context.ConfigurableWebApplicationContext から継承されたフィールド
APPLICATION_CONTEXT_ID_PREFIX, SERVLET_CONFIG_BEAN_NAMEインターフェース org.springframework.core.io.ResourceLoader から継承されたフィールド
CLASSPATH_URL_PREFIXインターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたフィールド
CLASSPATH_ALL_URL_PREFIXインターフェース org.springframework.web.context.WebApplicationContext から継承されたフィールド
CONTEXT_ATTRIBUTES_BEAN_NAME, CONTEXT_PARAMETERS_BEAN_NAME, ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE, SCOPE_APPLICATION, SCOPE_REQUEST, SCOPE_SESSION, SERVLET_CONTEXT_BEAN_NAMEコンストラクターの概要
コンストラクターコンストラクター説明新しいGenericWebApplicationContextを作成します。GenericWebApplicationContext(ServletContextEE servletContext) 指定されたServletContextEE の新しいGenericWebApplicationContextを作成します。GenericWebApplicationContext(DefaultListableBeanFactory beanFactory) 指定されたDefaultListableBeanFactoryで新しいGenericWebApplicationContextを作成します。GenericWebApplicationContext(DefaultListableBeanFactory beanFactory, ServletContextEE servletContext) メソッドのサマリー
修飾子と型メソッド説明protected ConfigurableEnvironment新しいStandardServletEnvironmentを作成して返します。このコンテキストが属するデプロイされたアプリケーションの名前を返します。StringSE[]この Web アプリケーションコンテキストの設定場所を返します。指定がない場合はnullを返します。この Web アプリケーションコンテキストのネームスペースがあれば、それを返します。protected ResourcegetResourceByPath(StringSE path) この実装は、ServletContextEE のルートにあるファイルパスをサポートします。protected ResourcePatternResolverこの実装は、拡張されていない WAR のパターンマッチングもサポートします。この Web アプリケーションコンテキストの ServletConfig を返します(存在する場合)。このアプリケーションの標準サーブレット API ServletContext を返します。使用すべきではありません。protected voidスタブプロパティソースを実際のインスタンスに置き換えます。protected voidテーマ機能を初期化します。protected voidpostProcessBeanFactory(ConfigurableListableBeanFactory beanFactory) リクエスト / セッションスコープ、環境 Bean、ServletContextAwareProcessorなどを登録します。voidsetConfigLocation(StringSE configLocation) この Web アプリケーションコンテキストの構成場所を init-param スタイルで設定します。voidsetConfigLocations(StringSE... configLocations) この Web アプリケーションコンテキストの構成場所を設定します。voidsetNamespace(StringSE namespace) この Web アプリケーションコンテキストのネームスペースを設定して、デフォルトのコンテキスト設定場所の構築に使用します。voidsetServletConfig(ServletConfigEE servletConfig) この Web アプリケーションコンテキストの ServletConfig を設定します。voidsetServletContext(ServletContextEE servletContext) このWebApplicationContextが実行されるServletContextEE を設定します。クラス org.springframework.context.support.GenericApplicationContext から継承されたメソッド
cancelRefresh, closeBeanFactory, getAutowireCapableBeanFactory, getBeanDefinition, getBeanFactory, getClassLoader, getDefaultListableBeanFactory, getResource, getResources, isAlias, isBeanDefinitionOverridable, isBeanNameInUse, refreshBeanFactory, refreshForAotProcessing, registerAlias, registerBean, registerBean, registerBean, registerBean, registerBean, registerBean, registerBeanDefinition, removeAlias, removeBeanDefinition, setAllowBeanDefinitionOverriding, setAllowCircularReferences, setApplicationStartup, setClassLoader, setParent, setResourceLoaderクラス org.springframework.context.support.AbstractApplicationContext から継承されたメソッド
addApplicationListener, addBeanFactoryPostProcessor, assertBeanFactoryActive, close, containsBean, containsBeanDefinition, containsLocalBean, destroyBeans, doClose, findAllAnnotationsOnBean, findAnnotationOnBean, findAnnotationOnBean, finishBeanFactoryInitialization, finishRefresh, getAliases, getApplicationListeners, getApplicationStartup, getBean, getBean, getBean, getBean, getBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanFactoryPostProcessors, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotation, getDisplayName, getEnvironment, getId, getInternalParentBeanFactory, getInternalParentMessageSource, getMessage, getMessage, getMessage, getParent, getParentBeanFactory, getStartupDate, getType, getType, initApplicationEventMulticaster, initLifecycleProcessor, initMessageSource, invokeBeanFactoryPostProcessors, isActive, isPrototype, isRunning, isSingleton, isTypeMatch, isTypeMatch, obtainFreshBeanFactory, onClose, prepareBeanFactory, prepareRefresh, publishEvent, publishEvent, publishEvent, refresh, registerBeanPostProcessors, registerListeners, registerShutdownHook, removeApplicationListener, resetCommonCaches, setDisplayName, setEnvironment, setId, start, stop, toStringクラス org.springframework.core.io.DefaultResourceLoader から継承されたメソッド
addProtocolResolver, clearResourceCaches, getProtocolResolvers, getResourceCacheクラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSEインターフェース org.springframework.core.AliasRegistry から継承されたメソッド
getAliasesインターフェース org.springframework.context.ApplicationContext から継承されたメソッド
getAutowireCapableBeanFactory, getDisplayName, getId, getParent, getStartupDateインターフェース org.springframework.context.ApplicationEventPublisher から継承されたメソッド
publishEvent, publishEventインターフェース org.springframework.beans.factory.support.BeanDefinitionRegistry から継承されたメソッド
containsBeanDefinition, getBeanDefinitionCount, getBeanDefinitionNamesインターフェース org.springframework.beans.factory.BeanFactory から継承されたメソッド
containsBean, getAliases, getBean, getBean, getBean, getBean, getBean, getBeanProvider, getBeanProvider, getType, getType, isPrototype, isSingleton, isTypeMatch, isTypeMatchインターフェース org.springframework.context.ConfigurableApplicationContext から継承されたメソッド
addApplicationListener, addBeanFactoryPostProcessor, addProtocolResolver, close, getApplicationStartup, getBeanFactory, getEnvironment, isActive, refresh, registerShutdownHook, removeApplicationListener, setApplicationStartup, setClassLoader, setEnvironment, setId, setParentインターフェース org.springframework.beans.factory.HierarchicalBeanFactory から継承されたメソッド
containsLocalBean, getParentBeanFactoryインターフェース org.springframework.beans.factory.ListableBeanFactory から継承されたメソッド
containsBeanDefinition, findAllAnnotationsOnBean, findAnnotationOnBean, findAnnotationOnBean, getBeanDefinitionCount, getBeanDefinitionNames, getBeanNamesForAnnotation, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanNamesForType, getBeanProvider, getBeanProvider, getBeansOfType, getBeansOfType, getBeansWithAnnotationインターフェース org.springframework.context.MessageSource から継承されたメソッド
getMessage, getMessage, getMessageインターフェース org.springframework.core.io.ResourceLoader から継承されたメソッド
getClassLoader, getResourceインターフェース org.springframework.core.io.support.ResourcePatternResolver から継承されたメソッド
getResources
コンストラクターの詳細
GenericWebApplicationContext
public GenericWebApplicationContext()新しいGenericWebApplicationContextを作成します。GenericWebApplicationContext
指定されたServletContextEE の新しいGenericWebApplicationContextを作成します。- パラメーター:
servletContext- 実行するServletContext- 関連事項:
GenericWebApplicationContext
指定されたDefaultListableBeanFactoryで新しいGenericWebApplicationContextを作成します。- パラメーター:
beanFactory- このコンテキストに使用するDefaultListableBeanFactoryインスタンス- 関連事項:
GenericWebApplicationContext
public GenericWebApplicationContext(DefaultListableBeanFactory beanFactory, ServletContextEE servletContext) - パラメーター:
beanFactory- このコンテキストに使用するDefaultListableBeanFactoryインスタンスservletContext- 実行するServletContext- 関連事項:
メソッドの詳細
setServletContext
このWebApplicationContextが実行されるServletContextEE を設定します。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのsetServletContext - 関連事項:
getServletContext
インターフェースからコピーされた説明:WebApplicationContextこのアプリケーションの標準サーブレット API ServletContext を返します。- 次で指定:
- インターフェース
WebApplicationContextのgetServletContext
getApplicationName
インターフェースからコピーされた説明:ApplicationContextこのコンテキストが属するデプロイされたアプリケーションの名前を返します。- 次で指定:
- インターフェース
ApplicationContextのgetApplicationName - オーバーライド:
- クラス
AbstractApplicationContextのgetApplicationName - 戻り値:
- デプロイされたアプリケーションの名前、またはデフォルトで空の文字列
createEnvironment
新しいStandardServletEnvironmentを作成して返します。- オーバーライド:
- クラス
AbstractApplicationContextのcreateEnvironment
postProcessBeanFactory
リクエスト / セッションスコープ、環境 Bean、ServletContextAwareProcessorなどを登録します。- オーバーライド:
- クラス
AbstractApplicationContextのpostProcessBeanFactory - パラメーター:
beanFactory- アプリケーションコンテキストで使用される Bean ファクトリ
getResourceByPath
この実装は、ServletContextEE のルートにあるファイルパスをサポートします。- オーバーライド:
- クラス
DefaultResourceLoaderのgetResourceByPath - パラメーター:
path- リソースへのパス- 戻り値:
- 対応するリソースハンドル
- 関連事項:
getResourcePatternResolver
この実装は、拡張されていない WAR のパターンマッチングもサポートします。- オーバーライド:
- クラス
AbstractApplicationContextのgetResourcePatternResolver - 戻り値:
- このコンテキストの ResourcePatternResolver
- 関連事項:
onRefresh
protected void onRefresh()テーマ機能を初期化します。- オーバーライド:
- クラス
AbstractApplicationContextのonRefresh - 関連事項:
initPropertySources
protected void initPropertySources()スタブプロパティソースを実際のインスタンスに置き換えます。
Servlet関連のプロパティソースを置き換えます。getTheme
使用すべきではありません。インターフェースからコピーされた説明:ThemeSource指定されたテーマ名のテーマインスタンスを返します。返されたテーマは、テーマ固有のメッセージ、コード、ファイルパスなどを解決します(例: Web 環境の CSS およびイメージファイル)。
- 次で指定:
- インターフェース
ThemeSourceのgetTheme - パラメーター:
themeName- テーマの名前- 戻り値:
- 対応するテーマ。定義されていない場合は
null。慣例により、ThemeSource は少なくともデフォルトのテーマ名 "theme" のデフォルトのテーマを返すことができるはずですが、他のテーマ名のデフォルトのテーマを返すこともあります。 - 関連事項:
setServletConfig
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストの ServletConfig を設定します。特定のサーブレットに属する WebApplicationContext に対してのみ呼び出されます。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのsetServletConfig - 関連事項:
getServletConfig
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストの ServletConfig を返します(存在する場合)。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのgetServletConfig
setNamespace
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストのネームスペースを設定して、デフォルトのコンテキスト設定場所の構築に使用します。ルート Web アプリケーションコンテキストには名前空間がありません。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのsetNamespace
getNamespace
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストのネームスペースがあれば、それを返します。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのgetNamespace
setConfigLocation
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストの構成場所を init-param スタイルで設定します。つまり、コンマ、セミコロン、空白で区切られた個別の場所を使用します。設定されていない場合、実装は、必要に応じて、指定された名前空間またはルート Web アプリケーションコンテキストのデフォルトを使用することになっています。
- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのsetConfigLocation
setConfigLocations
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストの構成場所を設定します。設定されていない場合、実装は、必要に応じて、指定された名前空間またはルート Web アプリケーションコンテキストのデフォルトを使用することになっています。
- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのsetConfigLocations
getConfigLocations
インターフェースからコピーされた説明:ConfigurableWebApplicationContextこの Web アプリケーションコンテキストの設定場所を返します。指定がない場合はnullを返します。- 次で指定:
- インターフェース
ConfigurableWebApplicationContextのgetConfigLocations