Spring @Autowired 在 class 中的所有 setter
Spring @Autowired on all setter in a class
是否可以指定所有 setter 都应使用一个注释自动装配?
这是我的 class:
@Component
public class MyClass {
private static Bean1 bean1;
//...
private static BeanN beanN;
public static Bean1 getBean1() {
return bean1;
}
@Autowired
public void setBean1(Bean1 bean1) {
MyClass.bean1 = bean1;
}
//...
public static BeanN getBeanN() {
return beanN;
}
@Autowired
public void setBeanN(BeanN beanN) {
MyClass.beanN = beanN;
}
}
没有。没有这样的内置注释。此外,Spring 不关心您的方法是否被解释为 bean 修改器(setter)。任何方法都可以用 @Autowired
注释,并且 Spring 将尝试使用适当的参数调用它。
由于 Spring 的重点是依赖注入,因此您没有理由拥有 static
字段。只需将 bean 注入到您需要的地方即可。
是否可以指定所有 setter 都应使用一个注释自动装配?
这是我的 class:
@Component
public class MyClass {
private static Bean1 bean1;
//...
private static BeanN beanN;
public static Bean1 getBean1() {
return bean1;
}
@Autowired
public void setBean1(Bean1 bean1) {
MyClass.bean1 = bean1;
}
//...
public static BeanN getBeanN() {
return beanN;
}
@Autowired
public void setBeanN(BeanN beanN) {
MyClass.beanN = beanN;
}
}
没有。没有这样的内置注释。此外,Spring 不关心您的方法是否被解释为 bean 修改器(setter)。任何方法都可以用 @Autowired
注释,并且 Spring 将尝试使用适当的参数调用它。
由于 Spring 的重点是依赖注入,因此您没有理由拥有 static
字段。只需将 bean 注入到您需要的地方即可。