java - Spring 单例 bean 如何工作?

标签 java spring singleton

我们有一个带有 Spring IOC 和 Jersey REST 的后端应用程序。我们定义的所有 spring bean 都使用默认范围,我的意思是,单例。

该应用程序以数据库为中心,拥有大量用户。我的问题:Spring 单例 bean 如何管理该应用程序的并发性?服务类中没有一个方法被定义为同步的,但我们从未遇到任何用户数据同步问题。一切看起来都很正常。

我认为我错过了有关 spring 单例 bean 或 spring 如何使用单例对象处理多个请求的信息。

根据我的理解,spring bean 是单例,并且没有服务方法被定义为同步,因此多个请求肯定存在一些同步问题。

你能帮我正确理解这件事吗?

最佳答案

Spring单例在Spring容器范围内处于单例状态。

如果到目前为止您的实现没有遇到任何问题。当您的 Bean 是无状态的时,就不必担心并发性。

当您拥有有状态 bean 并且要更改状态时,并发问题非常重要。当 bean 方法拥有来自函数参数的自己的输入时,就不再需要担心

关于java - Spring 单例 bean 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39281680/

相关文章:

java - sql 映射到 json 对象

java - 如何将 ISO 8601 句点转换为人类可读的字符串 [Android Studio]?

java - 在生产者/消费者模式中使用多个生产者和消费者对java中的字符串进行排序有什么好处?

java - 从 JApplet 向 JavaScript 发送数据的最简单方法是什么?

java - 在 ServletContextListener 上获取 Spring 应用程序上下文

java - Spring 在运行时添加外部 spring 上下文

java - 回滚在 jdbc spring 编程事务中不起作用

Javascript 单例继承

iphone - 我可以将 NSManagedObject 变成单例吗?

java - 为什么静态单例是避免 'DCL' 的简单而优雅的解决方案?