Java | Spring框架 | 构造器注入 vs 设值注入
构造器注入和设值注入是两种在Spring框架中常用的依赖注入方式。
构造器注入:
构造器注入是通过类的构造函数来注入依赖项。在Spring框架中,当你想要注入的依赖项在对象创建时就已经可用,构造器注入是一个很好的选择。
public class SomeClass {
private final DependencyA dependencyA;
private final DependencyB dependencyB;
public SomeClass(DependencyA dependencyA, DependencyB dependencyB) {
this.dependencyA = dependencyA;
this.dependencyB = dependencyB;
}
// ...
}
设值注入:
设值注入是通过类的setter方法来注入依赖项。这种方式在对象创建后依赖项变得可用时使用较为合适。
public class SomeClass {
private DependencyA dependencyA;
private DependencyB dependencyB;
public void setDependencyA(DependencyA dependencyA) {
this.dependencyA = dependencyA;
}
public void setDependencyB(DependencyB dependencyB) {
this.dependencyB = dependencyB;
}
// ...
}
在实际开发中,选择哪种注入方式通常取决于你的具体需求和项目规范。构造器注入可以在创建对象时就确保依赖项的可用性,而设值注入则更灵活,可以在对象创建后任何时候注入依赖项。
评论已关闭