public class SimpleServletPostProcessor extends ObjectSE implements DestructionAwareBeanPostProcessor, ServletContextAware, ServletConfigAware
Servlet
EE インターフェースを実装する Bean に初期化と破棄のコールバックを適用する BeanPostProcessor
。Bean インスタンスの初期化後、サーブレットの init
メソッドは、サーブレットの Bean 名とそれが実行されている ServletContext を含む ServletConfig で呼び出されます。
Bean インスタンスを破棄する前に、サーブレット destroy
が呼び出されます。
このポストプロセッサーはサーブレット初期化パラメーターをサポートしないことに注意してください。サーブレットインターフェースを実装する Bean インスタンスは、他の Spring Bean と同じように、つまりコンストラクター引数または Bean プロパティを介して構成されている必要があります。
プレーンサーブレットコンテナーで、Spring コンテキストで Bean としてサーブレット実装を再利用するには、サーブレット初期化パラメーターを Bean プロパティとして適用する Spring の HttpServletBean
基本クラスから派生し、標準サーブレットと Spring Bean 初期化スタイルの両方をサポートすることを検討してください。
または、Spring の ServletWrappingController
でサーブレットをラップすることを検討してください。これは、サーブレットの初期化パラメーターなどを指定できる既存のサーブレットクラスに特に適しています。
Servlet.init(javax.servlet.ServletConfig)
EE, Servlet.destroy()
EE, SimpleServletHandlerAdapter
コンストラクターと説明 |
---|
SimpleServletPostProcessor() |
修飾子と型 | メソッドと説明 |
---|---|
ObjectSE | postProcessAfterInitialization(ObjectSE bean, StringSE beanName) Bean 初期化コールバック(InitializingBean の afterPropertiesSet またはカスタム init メソッドなど)の後に、指定された新しい Bean インスタンスにこの BeanPostProcessor を適用します。 |
void | postProcessBeforeDestruction(ObjectSE bean, StringSE beanName) 破棄する前に、この BeanPostProcessor を指定の Bean インスタンスに適用します。 |
ObjectSE | postProcessBeforeInitialization(ObjectSE bean, StringSE beanName) Bean 初期化コールバック(InitializingBean の afterPropertiesSet またはカスタム init メソッドなど)の前に、この BeanPostProcessor を指定された新しい Bean インスタンスに適用します。 |
boolean | requiresDestruction(ObjectSE bean) 指定された Bean インスタンスがこのポストプロセッサーによる破棄を必要とするかどうかを判断します。 |
void | setServletConfig(ServletConfigEE servletConfig) このオブジェクトが実行される ServletConfig EE を設定します。 |
void | setServletContext(ServletContextEE servletContext) このオブジェクトが実行される ServletContext EE を設定します。 |
void | setUseSharedServletConfig(boolean useSharedServletConfig) setServletConfig を介して渡された共有 ServletConfig オブジェクトを使用するかどうかを設定します(使用可能な場合)。 |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, toStringSE, waitSE, waitSE, waitSE
public void setUseSharedServletConfig(boolean useSharedServletConfig)
setServletConfig
を介して渡された共有 ServletConfig オブジェクトを使用するかどうかを設定します(使用可能な場合)。デフォルトは "true" です。この設定を "false" にして、Bean 名をサーブレット名としてモック ServletConfig オブジェクトに渡し、現在の ServletContext を保持します。
public void setServletContext(ServletContextEE servletContext)
ServletContextAware
ServletContext
EE を設定します。 通常の Bean プロパティの設定後、InitializingBean の afterPropertiesSet
またはカスタム init メソッドのような初期コールバックの前に呼び出されます。ApplicationContextAware の setApplicationContext
の後に呼び出されます。
ServletContextAware
の setServletContext
servletContext
- このオブジェクトによって使用される ServletContext オブジェクト InitializingBean.afterPropertiesSet()
, ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
public void setServletConfig(ServletConfigEE servletConfig)
ServletConfigAware
ServletConfig
EE を設定します。 通常の Bean プロパティの設定後、InitializingBean の afterPropertiesSet
またはカスタム init メソッドのような初期コールバックの前に呼び出されます。ApplicationContextAware の setApplicationContext
の後に呼び出されます。
ServletConfigAware
の setServletConfig
servletConfig
- このオブジェクトによって使用される ServletConfig
EEInitializingBean.afterPropertiesSet()
, ApplicationContextAware.setApplicationContext(org.springframework.context.ApplicationContext)
public ObjectSE postProcessBeforeInitialization(ObjectSE bean, StringSE beanName) throws BeansException
BeanPostProcessor
afterPropertiesSet
またはカスタム init メソッドなど)の前に、この BeanPostProcessor を指定された新しい Bean インスタンスに適用します。Bean にはすでにプロパティ値が入力されています。返された Bean インスタンスは、元のラッパーの可能性があります。 デフォルトの実装は、指定された bean
をそのまま返します。
BeanPostProcessor
の postProcessBeforeInitialization
bean
- 新しい Bean インスタンス beanName
- Bean の名前 null
の場合、後続の BeanPostProcessors は呼び出されません BeansException
- エラーの場合 InitializingBean.afterPropertiesSet()
public ObjectSE postProcessAfterInitialization(ObjectSE bean, StringSE beanName) throws BeansException
BeanPostProcessor
afterPropertiesSet
またはカスタム init メソッドなど)の後に、指定された新しい Bean インスタンスにこの BeanPostProcessor を適用します。Bean にはすでにプロパティ値が入力されています。返された Bean インスタンスは、元のラッパーの可能性があります。FactoryBean の場合、このコールバックは、FactoryBean インスタンスと、FactoryBean によって作成されたオブジェクト(Spring 2.0 以降)の両方に対して呼び出されます。ポストプロセッサーは、対応する bean instanceof FactoryBean
チェックを介して、FactoryBean または作成されたオブジェクトのいずれか、あるいはその両方に適用するかどうかを決定できます。
このコールバックは、他のすべての BeanPostProcessor コールバックとは対照的に、InstantiationAwareBeanPostProcessor.postProcessBeforeInstantiation(java.lang.Class<?>, java.lang.String)
メソッドによってトリガーされた短絡後にも呼び出されます。
デフォルトの実装は、指定された bean
をそのまま返します。
BeanPostProcessor
の postProcessAfterInitialization
bean
- 新しい Bean インスタンス beanName
- Bean の名前 null
の場合、後続の BeanPostProcessors は呼び出されません BeansException
- エラーの場合 InitializingBean.afterPropertiesSet()
, FactoryBean
public void postProcessBeforeDestruction(ObjectSE bean, StringSE beanName) throws BeansException
DestructionAwareBeanPostProcessor
DisposableBean の destroy
およびカスタム destroy メソッドのように、このコールバックは、コンテナーがライフサイクルを完全に管理する Bean にのみ適用されます。これは通常、シングルトンとスコープ Bean の場合です。
DestructionAwareBeanPostProcessor
の postProcessBeforeDestruction
bean
- 破棄される Bean インスタンス beanName
- Bean の名前 BeansException
- エラーの場合 DisposableBean.destroy()
, AbstractBeanDefinition.setDestroyMethodName(String)
public boolean requiresDestruction(ObjectSE bean)
DestructionAwareBeanPostProcessor
デフォルトの実装は true
を返します。DestructionAwareBeanPostProcessor
の 5 以前の実装がこのメソッドの具体的な実装を提供しない場合、Spring は true
も暗黙のうちに想定します。
DestructionAwareBeanPostProcessor
の requiresDestruction
bean
- チェックする Bean インスタンス DestructionAwareBeanPostProcessor.postProcessBeforeDestruction(java.lang.Object, java.lang.String)
が最終的にこの Bean インスタンスのために呼び出されることになっている場合は true
、または不要な場合は false