【问题标题】:Should Spring allow member variable in bean with Singleton scopeSpring 是否应该允许具有 Singleton 范围的 bean 中的成员变量
【发布时间】:2015-02-13 04:37:46
【问题描述】:

这是参考我的另一个问题.... Spring bean singleton bean: multi thread access

Spring 是否应该允许具有 Singleton 范围的 bean 中的成员变量.. 原因是……

  1. 它是单例但不是同步对象(不是线程安全的)

  2. 通过上面的链接引用,同一个会话和上下文中的多个线程访问同一个bean,可以创建成员变量的不当值

【问题讨论】:

  • 请详细说明您的查询。两个帖子都不直观。
  • 任何框架都不能阻止任何用户做不合适的事情。 Spring 没有理由禁止在具有单例范围的 bean 中使用成员。
  • 我同意第一句话。基本上我不是在说禁止,而是在寻找这个用例的答案或解决方案。类似的想法我在同一场景中也有 bean 的成员方法 - 它们需要用作同步。
  • 是什么原因让这篇帖子被否决,我很好奇。我的思考过程中提出的问题..我在这里提出的问题。

标签: spring singleton


【解决方案1】:

我认为.. 我们应该只使用 Singleton bean 来执行功能(方法)。

我们应该使用 Prototype bean 来使用它的成员变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-02-21
    • 1970-01-01
    • 2021-10-19
    • 2021-05-05
    • 1970-01-01
    • 2011-05-06
    相关资源
    最近更新 更多