Annotation Interface SpringBootConfiguration
@Configuration
. Can be used as an alternative to the Spring's
standard @Configuration
annotation so that configuration can be found
automatically (for example in tests).
Application should only ever include one @SpringBootConfiguration
and
most idiomatic Spring Boot applications will inherit it from
@SpringBootApplication
.
- Since:
- 1.4.0
-
Optional Element Summary
Modifier and TypeOptional ElementDescriptionboolean
Specify whether@Bean
methods should get proxied in order to enforce bean lifecycle behavior, e.g.
-
Element Details
-
proxyBeanMethods
@AliasFor(annotation=org.springframework.context.annotation.Configuration.class) boolean proxyBeanMethodsSpecify whether@Bean
methods should get proxied in order to enforce bean lifecycle behavior, e.g. to return shared singleton bean instances even in case of direct@Bean
method calls in user code. This feature requires method interception, implemented through a runtime-generated CGLIB subclass which comes with limitations such as the configuration class and its methods not being allowed to declarefinal
.The default is
true
, allowing for 'inter-bean references' within the configuration class as well as for external calls to this configuration's@Bean
methods, e.g. from another configuration class. If this is not needed since each of this particular configuration's@Bean
methods is self-contained and designed as a plain factory method for container use, switch this flag tofalse
in order to avoid CGLIB subclass processing.Turning off bean method interception effectively processes
@Bean
methods individually like when declared on non-@Configuration
classes, a.k.a. "@Bean Lite Mode" (see@Bean's javadoc
). It is therefore behaviorally equivalent to removing the@Configuration
stereotype.- Returns:
- whether to proxy
@Bean
methods - Since:
- 2.2
- Default:
- true
-