注意:这个问题也出现在春季论坛(http://forum.spring.io/forum/spring-projects/container/748870-is-configuration-optional-for-javaconfig-classes),但我也鼓励将这张贴在SOF上,因为这些论坛即将被弃用,转而赞成SOF。对于JavaConfig类,@Configuration是否可选?
我有一个Java类的问题,用于基于Java的Spring配置。 Spring文档,JavaDoc以及其他博客和论坛的帖子都详细记录了这些类应该用@Configuration注释。但是,我想知道的是,如果它实际上是强制性的,它们需要使用@Configuration进行注释。
我正在用Spring编写一个REST服务器。我能够通过web.xml引用我的配置类,并且该类可以很好地设置我的Spring应用程序上下文,而无需使用@Configuration注释该类。与我的测试代码一样:我的所有测试都使用@ContextConfiguration注释,并且可以指向我的JavaConfig类(通过类属性),即使没有使用@Configuration注释JavaConfig类也是如此。我还应该注意到,我的JavaConfig类通过@Import注释从其他配置类继承,而那些下游配置类也不用@Configuration注释。
这一切都表明,我的问题是:是@Configuration真的只是一个可选的属性?也许我们需要它,如果我们有一个XML上下文文件,它通过DI/autowiring找到@ Configuration-annotated类来用于Spring上下文配置。但对我来说情况并非如此;我不能自动拉入所有使用@Configuration注解的类,因为我的服务器设置和测试设置都有单独的配置。
可有人请确认有关@Configuration是否忠实地选购我的想法?如果是这样,那么这个事实不应该反映在Spring文档或该注释的JavaDoc中?谢谢。
我觉得春天论坛上清楚地回答你的问题的工作。 – shazin