理论上弹簧配置的类型



我想问一下 Spring 配置类型的解释吗?

这是我所知道的,但我对我在堆栈和其他地方找到的东西感到困惑。

  1. 基于 XML 的配置
  2. 基于 Java 的配置
  3. 基于注释的配置(这是我感兴趣的(

我读过很多文章或观点,基本上只有两个配置选项(XML和Java(。那么,当我考虑基于注释的配置作为第三种选择时,有什么问题呢?我断言,仅当我使用以下方法使用基于 XML 的配置时,此选项才可用:

<context:annotation-config/>

那么,这就是为什么有些人不认为基于注释的配置是第三种选择,因为它依赖于XML(或Java(配置?

我还有一个问题:

是否可以通过使用基于 Java 的配置来使用注释方法?我无法找到如何使用Java启用它。(也许使用@EnableAutoConfiguration??

我考虑使用Spring Core的这种情况。当我们谈论 SpringBoot 时,我假设默认情况下@SpringBootApplication注释中启用了注释配置?

谢谢!

从一般意义上讲,你是对的,我建议你参考春季官方文档中的这一小节[https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/annotation/Configuration.html]

在这里,您将看到使用 XML 配置的示例,该示例使用

<beans>
<context:annotation-config/>
<bean class="com.acme.AppConfig"/>
</beans>

和 JAVA 弹簧组件扫描

@Configuration
public class AppConfig {
private final SomeBean someBean;
public AppConfig(SomeBean someBean) {
this.someBean = someBean;
}
// @Bean definition using "SomeBean"
}

你对 springboot @SpringBootApplication I 包含扫描和配置您的 bean 的 @Configuration、@ComponentScan 和@EnableAutoConfiguration 也是正确的

最新更新