spring Java Config 相关注解及注意点
所属分类 spring
浏览量 1372
@Configuration 配置类
AnnotationConfigApplicationContext 注册加载配置类
@ComponentScan
组件扫描 默认扫描配置所在包
String[] value() default {};
String[] basePackages() default {};
Class>[] basePackageClasses() default {};
boolean lazyInit() default false;
@Bean
@Bean(name="xxx")
配置类的一些限制
Configuration problem: @Bean method 'user' must not be private or final
@Bean 注解方法不能为 private 或 final
可以为静态方法
Configuration problem: @Configuration class 'Config' may not be final.
配置类不能为final
@Configuration("config")
为配置类指定名字, 可以在 上下文中获取该bean
Config config = (Config)ctx.getBean("config");
System.out.println(config.getClass());
class spring5.Config$$EnhancerBySpringCGLIB$$86789b06
配置类使用 CGLIB 增强 , final 类 和 方法 无法通过继承增强
为了防止配置类被误用
可以声明为 abstract 或者把方法声明为 protected , 防止被外部 调用
上一篇
下一篇
注解组合和继承
spring-boot-starter-parent的作用
spring5实例之AnnotationConfigApplicationContext使用
logback pattern 配置
java8的方法区
Hadoop不行了吗