Spring @Configuration 和 @Component 区别

1.@Configuration 和 @Component 区别

我们可以看下,其实@Configuration 本质其实是 @Component注解的,因此  <context:component-scan>和@ComponentScan都能处理@Configuration 类


被@Configuration 标记的类必须符合下面几点要求

1.配置类必须是要以类的形式提供,不能是工厂返回的实例,允许生成子类在运行是增强cglib动态代理

2配置类不能是fanl 修饰,不能是匿名类( 任何嵌套的类必须是非本地, 既不能在方法中声明,不能是privater),嵌套的configruation必须是静态类

3.@Bean 方法可能不会返过来创建进一步的配置类 意思就是返回的bean 带有@Configuration.也只是当作普通类来处理。

原理分析待续····························



2.@Configuration 和 @bean

这里@Configuration可以看作是用spring的时候xml里面的<beans>标签

@Bean可以理解为用spring 的时候里面<bean>标签

这两个注解是spring 里面的,并不是spring boot里面的

在spring xml 这种形式的项目的时候 后面都要加上<context:component-scan base-package="com.xxx.xxx"> ,有时候好多注解不起作用, 可能就是这个注解。而在spring boot里面就不一样了, 只要保证main方法的入口在这些的列的上层包就行

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本来是准备看一看Spring源码的。然后在知乎上看到来一个帖子,说有一群**自己连Spring官方文档都没有完全读...
    此鱼不得水阅读 6,952评论 4 21
  • SpringMVC原理分析 Spring Boot学习 5、Hello World探究 1、POM文件 1、父项目...
    jack_jerry阅读 1,378评论 0 1
  • http://liuxing.info/2017/06/30/Spring%20AMQP%E4%B8%AD%E6%...
    sherlock_6981阅读 16,033评论 2 11
  • 文章较长,建议先收藏,在较空的时候来看。 Spring Boot 框架的初衷:快速地启动Spring应用Sprin...
    Drew_Zhong阅读 2,802评论 3 15
  • 小结:运用方法 第一,促销时,价格低的商品用打折的方式,可以让消费者感到更多的优惠感,而价格高的商品,可以用降价的...
    凉王_4801阅读 444评论 0 0