我正在阅读有关进行Spring配置的方法,并且知道有三种方法可以执行相同的操作:
1)基于XML的简单。
2)使用基于注释
3)基于Java的配置。
我对#1方法感到满意。基于纯XML。
现在,我尝试使用#2方法。 Using annotation based
。
例如:
@Component("circleID")
public class Circle {
@Autowired
private Point point;
@Override
public String toString() {
return "Circle [point=" + point + "]";
}
}
我希望使用Annotation
不需要任何 xml文件,但我们仍然需要以下XML文件。
<context:annotation-config/>
<context:component-scan base-package="com.example.point , com.example.shapes" />
所以不使用注释方法我们提供部分信息,一些是XML,一些是Annotations?
我不清楚这一点,任何人都可以帮我解决这个疑问吗?
答案 0 :(得分:5)
XML不是必需的。您可以使用纯Java基于配置(注释)配置Spring。
例如,您可以使用@Configuration
和@ComponentScan
注释创建一个类,而不是使用您在问题中发布的XML:
@Configuration
@ComponentScan(basePackages = {"com.example.point", "com.example.shapes"})
public class MySpringConfig {
public static void main(String[] args) {
// Create Spring ApplicationContext from annotation config
ApplicationContext context =
new AnnotationConfigApplicationContext(MySpringConfig.class);
// ...
}
}
请参阅Spring Framework参考文档中的Java-based container configuration。