## org.springframework.beans.factory
Interface DisposableBean

All Known Implementing Classes:
  AbstractApplicationContext, AbstractBeanFactoryBasedTargetSourceCreator, AbstractEntityManagerFactoryBean, AbstractFactoryBean, AbstractJaxWsServiceExporter, AbstractJmsListeningContainer, AbstractMessageListenerContainer, AbstractPollingMessageListenerContainer, AbstractPoolingTargetSource, AbstractRefreshableApplicationContext, AbstractRefreshableConfigApplicationContext, AbstractRefreshablePortletApplicationContext, AbstractRefreshableWebApplicationContext, AbstractRequestLoggingFilter, AbstractServiceLoaderBasedFactoryBean, AbstractSessionFactoryBean, AbstractXmlApplicationContext, AnnotationConfigApplicationContext, AnnotationConfigWebApplicationContext, AnnotationMBeanExporter, AnnotationSessionFactoryBean, BeanConfigurerSupport, CachingConnectionFactory, CharacterEncodingFilter, ClassPathXmlApplicationContext, CommonsClientHttpRequestFactory, CommonsPoolTargetSource, CommonsRequestLoggingFilter, ConnectorServerFactoryBean, DefaultContextLoadTimeWeaver, DefaultMessageListenerContainer, DefaultMessageListenerContainer102, DelegatingFilterProxy, EhCacheManagerFactoryBean, EmbeddedDatabaseFactoryBean, ExecutorConfigurationSupport, FileSystemXmlApplicationContext, GenericApplicationContext, GenericFilterBean, GenericMessageEndpointManager, GenericWebApplicationContext, GenericXmlApplicationContext, HiddenHttpMethodFilter, JmsMessageEndpointManager, JndiRmiServiceExporter, LazyInitTargetSourceCreator, ListFactoryBean, LocalContainerEntityManagerFactoryBean, LocalEntityManagerFactoryBean, LocalPersistenceManagerFactoryBean, LocalSessionFactoryBean, Log4jNestedDiagnosticContextFilter, MapFactoryBean, MBeanClientInterceptor, MBeanExporter, MBeanProxyFactoryBean, MBeanServerConnectionFactoryBean, MBeanServerFactoryBean, MultipartFilter, NotificationListenerRegistrar, ObjectFactoryCreatingFactoryBean, OncePerRequestFilter, OpenEntityManagerInViewFilter, OpenPersistenceManagerInViewFilter, OpenSessionInViewFilter, PortletContextScope, PortletWrappingController, ProviderCreatingFactoryBean, QuickTargetSourceCreator, RequestContextFilter, ResourceAdapterApplicationContext, ResourceAdapterFactoryBean, ResourceBundleViewResolver, RmiRegistryFactoryBean, RmiServiceExporter, ScheduledAnnotationBeanPostProcessor, ScheduledExecutorFactoryBean, ScheduledTaskRegistrar, SchedulerFactoryBean, ScriptFactoryPostProcessor, ServiceFactoryBean, ServiceListFactoryBean, ServiceLoaderFactoryBean, ServletContextRequestLoggingFilter, ServletContextScope, ServletWrappingController, SetFactoryBean, ShallowEtagHeaderFilter, SimpleHttpServerFactoryBean, SimpleHttpServerJaxWsServiceExporter, SimpleJaxWsServiceExporter, SimpleMessageListenerContainer, SimpleMessageListenerContainer102, SimpleRemoteSlsbInvokerInterceptor, SimpleRemoteStatelessSessionProxyFactoryBean, SimpleThreadPoolTaskExecutor, SingleConnectionDataSource, SingleConnectionFactory, SingleConnectionFactory, SingleConnectionFactory102, SortedResourcesFactoryBean, StaticApplicationContext, StaticPortletApplicationContext, StaticWebApplicationContext, TaskExecutorFactoryBean, ThreadLocalTargetSource, ThreadPoolExecutorFactoryBean, ThreadPoolTaskExecutor, ThreadPoolTaskExecutor, ThreadPoolTaskScheduler, TilesConfigurer, TimerFactoryBean, TimerManagerAccessor, TimerManagerFactoryBean, TimerManagerTaskScheduler, TimerTaskExecutor, XmlPortletApplicationContext, XmlViewResolver, XmlWebApplicationContext

    public interface DisposableBean

Interface to be implemented by beans that want to release resources on destruction. A BeanFactory is supposed to invoke the destroy method if it disposes a cached singleton. An application context is supposed to dispose all of its singletons on close.

An alternative to implementing DisposableBean is specifying a custom destroy-method, for example in an XML bean definition. For a list of all bean lifecycle methods, see the BeanFactory javadocs.

Since:
  12.08.2003
Author:
  Juergen Hoeller
See Also:
  `AbstractBeanDefinition.getDestroyMethodName()`, `ConfigurableApplicationContext.close()`

Method Summary
`void` `destroy()` Invoked by a BeanFactory on destruction of a singleton.

Method Detail

### destroy

    void destroy()
                 throws Exception

  Invoked by a BeanFactory on destruction of a singleton.

  Throws:
    `Exception` - in case of shutdown errors. Exceptions will get logged but not rethrown to allow other beans to release their resources too.