【问题标题】:why spring does not manages prototype bean once created为什么spring一旦创建就不会管理原型bean
【发布时间】:2017-11-28 22:40:57
【问题描述】:

所以关于原型作用域 bean,我知道 spring 只是在将它移交给请求的 bean 之前创建它执行生命周期过程。然后如果忘记了。而且从逻辑上讲,我也可以理解,因为它是原型,它将仅由每个请求使用(是的,不是http请求。)但是为什么不spring容器只保留原型bean的引用来管理完整的生命周期?

【问题讨论】:

  • 你想表达什么?自应用程序运行以来,spring 本身是否应该保留对它创建的数千或数百万个原型 bean 之一的引用?想象一个创建原型 bean 的工厂。想象一下,工厂为每个 http servlet 请求和每秒多个请求创建这些原型的许多实例。您很快就会遇到 OutOfMemoryError。

标签: java spring spring-bean


【解决方案1】:

“原型”作用域的行为与使用“新”运算符创建的任何对象 POJO 非常相似,除了 Spring 原型将连接 @Autowired bean。它们不是单例,也不是连接到会话或请求范围,因此它们更类似于常规 POJO。

【讨论】:

    猜你喜欢
    • 2011-09-27
    • 2018-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-22
    • 1970-01-01
    相关资源
    最近更新 更多