org.springframework.beans.factory

## Interface BeanNameAware

- All Superinterfaces:
    Aware
  All Known Implementing Classes:
    AbstractAtomFeedView, AbstractEntityManagerFactoryBean, AbstractExcelView, AbstractFeedView, AbstractJasperReportsSingleFormatView, AbstractJasperReportsView, AbstractJExcelView, AbstractJmsListeningContainer, AbstractMessageListenerContainer, AbstractPdfStamperView, AbstractPdfView, AbstractPollingMessageListenerContainer, AbstractRefreshableConfigApplicationContext, AbstractRefreshablePortletApplicationContext, AbstractRefreshableWebApplicationContext, AbstractRequestLoggingFilter, AbstractRssFeedView, AbstractTemplateView, AbstractUrlBasedView, AbstractView, AbstractXmlApplicationContext, AbstractXsltView, AnnotationConfigWebApplicationContext, CharacterEncodingFilter, ClassPathXmlApplicationContext, CommonsRequestLoggingFilter, ConcurrentMapCacheFactoryBean, ConfigurableJasperReportsView, CronTriggerBean, CronTriggerFactoryBean, DefaultAdvisorAutoProxyCreator, DefaultMessageListenerContainer, DefaultMessageListenerContainer102, DelegatingFilterProxy, EhCacheFactoryBean, ExecutorConfigurationSupport, FieldRetrievingFactoryBean, FileSystemXmlApplicationContext, FilterDefinitionFactoryBean, FreeMarkerView, GenericFilterBean, HiddenHttpMethodFilter, HttpPutFormContentFilter, InternalResourceView, JasperReportsCsvView, JasperReportsHtmlView, JasperReportsMultiFormatView, JasperReportsPdfView, JasperReportsXlsView, JobDetailBean, JobDetailFactoryBean, JstlView, LocalContainerEntityManagerFactoryBean, LocalEntityManagerFactoryBean, Log4jNestedDiagnosticContextFilter, MappingJackson2JsonView, MappingJacksonJsonView, MarshallingView, MethodInvokingJobDetailFactoryBean, MultipartFilter, OncePerRequestFilter, OpenEntityManagerInViewFilter, OpenPersistenceManagerInViewFilter, OpenSessionInViewFilter, OpenSessionInViewFilter, PlaceholderConfigurerSupport, PortletWrappingController, PreferencesPlaceholderConfigurer, PropertyPathFactoryBean, PropertyPlaceholderConfigurer, PropertySourcesPlaceholderConfigurer, RedirectView, RequestContextFilter, ScheduledExecutorFactoryBean, SchedulerFactoryBean, ServletContextPropertyPlaceholderConfigurer, ServletContextRequestLoggingFilter, ServletForwardingController, ServletWrappingController, ShallowEtagHeaderFilter, SimpleMessageListenerContainer, SimpleMessageListenerContainer102, SimpleTriggerBean, SimpleTriggerFactoryBean, TaskExecutorFactoryBean, ThreadPoolExecutorFactoryBean, ThreadPoolTaskExecutor, ThreadPoolTaskExecutor, ThreadPoolTaskScheduler, TilesJstlView, TilesView, TilesView, TilesView, TimerFactoryBean, TimerTaskExecutor, TypeDefinitionBean, VelocityLayoutView, VelocityToolboxView, VelocityView, XmlPortletApplicationContext, XmlWebApplicationContext, XsltView

      public interface BeanNameAware
      extends Aware

  Interface to be implemented by beans that want to be aware of their bean name in a bean factory. Note that it is not usually recommended that an object depend on its bean name, as this represents a potentially brittle dependence on external configuration, as well as a possibly unnecessary dependence on a Spring API.

  For a list of all bean lifecycle methods, see the `BeanFactory javadocs`.

  Since:
    01.11.2003
  Author:
    Juergen Hoeller, Chris Beams
  See Also:
    `BeanClassLoaderAware`, `BeanFactoryAware`, `InitializingBean`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `setBeanName(String name)` Set the name of the bean in the bean factory that created this bean.

- - ### Method Detail

    - #### setBeanName

          void setBeanName(String name)

      Set the name of the bean in the bean factory that created this bean.

      Invoked after population of normal bean properties but before an init callback such as `InitializingBean.afterPropertiesSet()` or a custom init-method.

      Parameters:
        `name` - the name of the bean in the factory. Note that this name is the actual bean name used in the factory, which may differ from the originally specified name: in particular for inner bean names, the actual bean name might have been made unique through appending "#..." suffixes. Use the `BeanFactoryUtils.originalBeanName(String)` method to extract the original bean name (without suffix), if desired.