在 class 上声明 @configuration 会使它成为 spring bean 吗?
Will declaring @configuration on a class make it a spring bean?
我有一个 spring 引导项目,并且我有一个 class 声明并带有 @configuration
注释。
用 @configuration
声明 class 会使它成为 spring bean 吗?下面是我的代码
@Configuration
public class DateTimeFormatConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addFormatters(FormatterRegistry registry) {
DateTimeFormatterRegistrar registrar = new DateTimeFormatterRegistrar();
registrar.setUseIsoFormat(true);
registrar.registerFormatters(registry);
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
argumentResolvers.add(new PaginationArgumentResolver());
argumentResolvers.add(new FlightFilterArgumentResolver());
argumentResolvers.add(new CampaignFilterArgumentResolver());
argumentResolvers.add(new ContactListFilterArgumentResolver());
argumentResolvers.add(new UserFilterArgumentResolver());
argumentResolvers.add(new PrimecastAccountFilterArgumentResolver());
argumentResolvers.add(new MessageHistoryFilterArgumentResolver());
}
}
上面的代码是否会在启动时在应用程序上下文中创建一个 spring bean DateTimeFormatConfiguration
?
是的。 @Configuration
注释 class 将注册为 spring bean。从文档中检查以下片段。 @configuration
的主要目的是充当 bean 源。
When @Configuration classes are provided as input, the @Configuration
class itself is registered as a bean definition, and all declared
@Bean methods within the class are also registered as bean
definitions.
我有一个 spring 引导项目,并且我有一个 class 声明并带有 @configuration
注释。
用 @configuration
声明 class 会使它成为 spring bean 吗?下面是我的代码
@Configuration
public class DateTimeFormatConfiguration extends WebMvcConfigurerAdapter {
@Override
public void addFormatters(FormatterRegistry registry) {
DateTimeFormatterRegistrar registrar = new DateTimeFormatterRegistrar();
registrar.setUseIsoFormat(true);
registrar.registerFormatters(registry);
}
@Override
public void addArgumentResolvers(List<HandlerMethodArgumentResolver> argumentResolvers) {
argumentResolvers.add(new PaginationArgumentResolver());
argumentResolvers.add(new FlightFilterArgumentResolver());
argumentResolvers.add(new CampaignFilterArgumentResolver());
argumentResolvers.add(new ContactListFilterArgumentResolver());
argumentResolvers.add(new UserFilterArgumentResolver());
argumentResolvers.add(new PrimecastAccountFilterArgumentResolver());
argumentResolvers.add(new MessageHistoryFilterArgumentResolver());
}
}
上面的代码是否会在启动时在应用程序上下文中创建一个 spring bean DateTimeFormatConfiguration
?
是的。 @Configuration
注释 class 将注册为 spring bean。从文档中检查以下片段。 @configuration
的主要目的是充当 bean 源。
When @Configuration classes are provided as input, the @Configuration class itself is registered as a bean definition, and all declared @Bean methods within the class are also registered as bean definitions.