Spring 配置 - 需要自动装配 bean?
Spring configuration - Autowired bean required?
我遇到了原型 bean 包含单例 bean 的情况。为了实现它,我必须创建 2 个配置 classes。是否可以将我的 2 个配置 class 合并为一个配置?
单例class:
public class MySingleton {
}
原型class:
public class MyPrototype {
private MySingleton b;
public MyPrototype(MySingleton b) {
this.b = b;
}
}
配置class1:
@Configuration
public class ConfigClassA {
@Bean
public MySingleton myBean() {
return new MySingleton();
}
}
配置class2:
@Configuration
public class ConfigClassB {
@Autowired
public MySingleton mb;
@Bean
@Scope("prototype")
public MyPrototype myPrototype() {
return new MyPrototype(mb);
}
}
试试这个:
@Configuration
public class ConfigClass {
@Bean
public MySingleton myBean() {
return new MySingleton();
}
@Bean
@Scope("prototype")
public MyPrototype myPrototype(MySingleton myBean) {
return new MyPrototype(myBean);
}
}
BeanFactory 在创建原型bean 时应该搜索MySingleton 类型的bean 并将其注入方法myPrototype
.
我遇到了原型 bean 包含单例 bean 的情况。为了实现它,我必须创建 2 个配置 classes。是否可以将我的 2 个配置 class 合并为一个配置?
单例class:
public class MySingleton {
}
原型class:
public class MyPrototype {
private MySingleton b;
public MyPrototype(MySingleton b) {
this.b = b;
}
}
配置class1:
@Configuration
public class ConfigClassA {
@Bean
public MySingleton myBean() {
return new MySingleton();
}
}
配置class2:
@Configuration
public class ConfigClassB {
@Autowired
public MySingleton mb;
@Bean
@Scope("prototype")
public MyPrototype myPrototype() {
return new MyPrototype(mb);
}
}
试试这个:
@Configuration
public class ConfigClass {
@Bean
public MySingleton myBean() {
return new MySingleton();
}
@Bean
@Scope("prototype")
public MyPrototype myPrototype(MySingleton myBean) {
return new MyPrototype(myBean);
}
}
BeanFactory 在创建原型bean 时应该搜索MySingleton 类型的bean 并将其注入方法myPrototype
.