クラス 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) 指定されたServletContext
EE の新しいGenericWebApplicationContext
を作成します。GenericWebApplicationContext
(DefaultListableBeanFactory beanFactory) 指定されたDefaultListableBeanFactory
で新しいGenericWebApplicationContext
を作成します。GenericWebApplicationContext
(DefaultListableBeanFactory beanFactory, ServletContextEE servletContext) メソッドのサマリー
修飾子と型メソッド説明protected ConfigurableEnvironment
新しいStandardServletEnvironment
を作成して返します。このコンテキストが属するデプロイされたアプリケーションの名前を返します。StringSE[]
この Web アプリケーションコンテキストの設定場所を返します。指定がない場合はnull
を返します。この Web アプリケーションコンテキストのネームスペースがあれば、それを返します。protected Resource
getResourceByPath
(StringSE path) この実装は、ServletContext
EE のルートにあるファイルパスをサポートします。protected ResourcePatternResolver
この実装は、拡張されていない WAR のパターンマッチングもサポートします。この Web アプリケーションコンテキストの ServletConfig を返します(存在する場合)。このアプリケーションの標準サーブレット API ServletContext を返します。使用すべきではありません。protected void
スタブプロパティソースを実際のインスタンスに置き換えます。protected void
テーマ機能を初期化します。protected void
postProcessBeanFactory
(ConfigurableListableBeanFactory beanFactory) リクエスト / セッションスコープ、環境 Bean、ServletContextAwareProcessor
などを登録します。void
setConfigLocation
(StringSE configLocation) この Web アプリケーションコンテキストの構成場所を init-param スタイルで設定します。void
setConfigLocations
(StringSE... configLocations) この Web アプリケーションコンテキストの構成場所を設定します。void
setNamespace
(StringSE namespace) この Web アプリケーションコンテキストのネームスペースを設定して、デフォルトのコンテキスト設定場所の構築に使用します。void
setServletConfig
(ServletConfigEE servletConfig) この Web アプリケーションコンテキストの ServletConfig を設定します。void
setServletContext
(ServletContextEE servletContext) このWebApplicationContext
が実行されるServletContext
EE を設定します。クラス 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
指定されたServletContext
EE の新しいGenericWebApplicationContext
を作成します。- パラメーター:
servletContext
- 実行するServletContext
- 関連事項:
GenericWebApplicationContext
指定されたDefaultListableBeanFactory
で新しいGenericWebApplicationContext
を作成します。- パラメーター:
beanFactory
- このコンテキストに使用するDefaultListableBeanFactory
インスタンス- 関連事項:
GenericWebApplicationContext
public GenericWebApplicationContext(DefaultListableBeanFactory beanFactory, ServletContextEE servletContext) - パラメーター:
beanFactory
- このコンテキストに使用するDefaultListableBeanFactory
インスタンスservletContext
- 実行するServletContext
- 関連事項:
メソッドの詳細
setServletContext
このWebApplicationContext
が実行されるServletContext
EE を設定します。- 次で指定:
- インターフェース
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
この実装は、ServletContext
EE のルートにあるファイルパスをサポートします。- オーバーライド:
- クラス
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