Spring配置优化与面向切面编程入门
1. Spring中减少XML配置
在Spring开发中,传统的XML配置方式常因冗长而受到开发者诟病。为解决这一问题,Spring提供了多种减少甚至消除XML配置的方法。
Java配置是一种有效的替代方式。例如,通过Java方法声明Bean,如下代码创建并返回一个 Juggler
实例,并将其注册到Spring应用上下文中,ID为 duke
:
@Bean
public Performer duke() {
return new Juggler();
}
与XML版本相比,Java配置有显著优势。在XML中,Bean的类型和ID通过字符串属性标识,缺乏编译时检查。若重命名 Juggler
类,可能忘记修改XML配置。而Java配置中,Bean的ID和类型是方法签名的一部分,实际创建在方法体中,能在编译时检查类型和ID的唯一性。
2. Spring基于Java配置的依赖注入
在Spring的Java配置中声明Bean就像编写返回类实例的方法。依赖注入也遵循常见的Java习惯。
- 值注入 :以创建一个能抛接15个豆袋的 Juggler
Bean为例,在XML配置中使用 <constructor-arg>
元素,而在Java配置中,可直接将数字传入构造函数: