如果我尝试手动实例化 spring bean 会发生什么
What will happen if I tried to instantiate spring bean manually
阅读一些源代码,我偶然发现了这个 spring bean
@Service
public class ValidationService {...}
在许多地方使用 new()
运算符手动实例化
例如:
var validationService=new ValidationService();
现在我正在考虑重构所有这些实例化并将其替换为适当的 spring 注入。
这让我想到如果我们使用 new()
运算符实例化一个 bean 会发生什么。它会创建 bean 的新实例还是只检索 spring 托管实例?
当对象被手动实例化时,它就像一个普通的 Java 对象。
Spring 未涉及,因此所有“spring 功能”(控制反转、依赖注入等)不可用。
阅读一些源代码,我偶然发现了这个 spring bean
@Service
public class ValidationService {...}
在许多地方使用 new()
运算符手动实例化
例如:
var validationService=new ValidationService();
现在我正在考虑重构所有这些实例化并将其替换为适当的 spring 注入。
这让我想到如果我们使用 new()
运算符实例化一个 bean 会发生什么。它会创建 bean 的新实例还是只检索 spring 托管实例?
当对象被手动实例化时,它就像一个普通的 Java 对象。
Spring 未涉及,因此所有“spring 功能”(控制反转、依赖注入等)不可用。