@Configuration *在Spring Boot中真正意味着什么?

时间:2018-03-27 18:34:39

标签: java spring spring-boot

我一直在为一个项目研究Spring Boot,我可以使用一些帮助。文档以一种模糊的方式引用@Configuration - 它取代了基于XML的配置。其他来源将@Configuration称为标记" Bean定义的来源。"

我对Java相对较新,并且对某些语言感到挣扎,但到目前为止我的理解是:@Bean标记了一个包含生成bean的方法的类(实际上只是类getter / setters)并且至少是一个无参数的构造函数)。这些方法应注释@Autowired。这对Spring很重要,因为这是它管理IoC的方式 - 它收集可以创建对象的方法,并寻找@ Configuration定义(使用反射?)。当找到一个时,它会执行创建对象的相应函数。

这准确吗?我花了一段时间以为router.events是一种设置更简单的应用程序状态的方法,但听起来它实际上是必不可少的应用程序结构(类)的来源。

1 个答案:

答案 0 :(得分:1)

从Spring 4官方文档Annotation Type Configuration

开始

它清楚地表明具有@Configuration注释的类告诉Spring容器,有一个或多个bean需要在运行时处理。根据您的配置类型(即Web或非Web),Spring会根据上下文引导您的@Configuration类。

如上所述,您可以通过xml配置文件或基于java的注释(首选,可读且更容易)来执行此配置。

您也可以从引用的文档中阅读其他@Configuration注释类可以执行的操作。