【问题标题】:Spring JavaConfig vs Annotated Class [duplicate]Spring JavaConfig与带注释的类[重复]
【发布时间】:2014-10-10 07:25:22
【问题描述】:

在 JavaConfig 中定义一个 bean 与仅仅注解一个类有何不同?

JavaConfig:

@Configuration
public class AppConfig {
    @Bean
    public FilterRegistrationBean filterRegistrationBean () {
        SomeFilter filter = new SomeFilter();

        return SomeFilter;
    }

带注释的类

@Bean
public class SomeFilter extends FilterRegistrationBean {
}

【问题讨论】:

    标签: java spring


    【解决方案1】:

    @Bean 注释不能应用于类类型。 @Bean 是由 @Configuration 类解析器处理的注释。它适用于工厂方法。

    假设您的意思类似于 @Component,区别在于显式声明,您控制 bean 类的整个实例化及其初始化,而隐式声明,您让容器自己解决。

    【讨论】:

      【解决方案2】:

      您可以使用 @Component 来注释您的 bean,以达到与 Config 类中的 @Bean 注释相同的效果。 IE。 @Bean 显式 bean 声明。 @Component 隐式(或自动)bean 定义。

      【讨论】:

        猜你喜欢
        • 2011-11-13
        • 2012-04-14
        • 2014-09-02
        • 2011-10-03
        • 2018-01-10
        • 2015-11-14
        • 1970-01-01
        • 2012-05-07
        • 1970-01-01
        相关资源
        最近更新 更多