1、声明方式
@Component
@Scope("prototype")
public class DemoPrototype {
...
}
2、其它类要注入改类时
注意:不能直接使用@Autowired
,否则注入的还是单例,需要使用工厂。
@Autowired
private ObjectFactory<T> objectFactory;
对象进行注入(T为你要注入的类),想要使用该多例对象时,用
T t = objectFactory.getObject();
完整使用demo如下:
@Component
public class DemoUsePrototype {
@Autowired
private ObjectFactory<DemoPrototype> objectFactory;
public void getDemoPrototype(){
DemoPrototype t = objectFactory.getObject();
}
}