我想知道什么时候应该在 Spring 中使用 prototype、request 和 session 作用域?我知道如果请求 bean,singleton 将返回相同的对象实例。
那么我们为什么要考虑其他 Spring 作用域呢?
带有示例的解释将有助于理解它的必要性。
最佳答案
以下是 Spring bean 作用域的解释以及相关示例:
原型(prototype)
什么->每次为每个请求提供不同的实例
当->你的bean包含一个你想要保持隔离的状态(即对象属性),并且你想要确保它不会在下一个请求时被重新使用
请求
什么->它每次为每个 HTTP 请求提供不同的实例,仅在 Web 应用程序的上下文中可用
当 -> 你的 bean 对传入实体(即 Product 对象)进行建模时,你需要在该 Web 请求中捕获并处理该实体
session
什么->它为每个 HTTP session 提供不同的实例,仅在 Web 应用程序的上下文中可用
当本地缓存与特定用户(例如 ShoppingBasket 或 UserSession)关联时,您通常将其称为有状态应用程序
关于spring - 何时使用 Spring Prototype、Request 和 Session 范围?任何现实生活中的例子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59926969/