1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-20 22:17:09 +08:00

Update SpringBean.md

This commit is contained in:
SnailClimb 2019-01-29 22:22:43 +08:00 committed by GitHub
parent 9601264d42
commit 502a06c1e0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -23,7 +23,7 @@
**Spring中的bean默认都是单例的这些单例Bean在多线程程序下如何保证线程安全呢** 例如对于Web应用来说Web容器对于每个用户请求都创建一个单独的Sevlet线程来处理请求引入Spring框架之后每个Action都是单例的那么对于Spring托管的单例Service Bean如何保证其安全呢 **Spring的单例是基于BeanFactory也就是Spring容器的单例Bean在此容器内只有一个Java的单例是基于 JVM每个 JVM 内只有一个实例。**
在大多数情况下。单例 bean 是很理的方案。不过,有时候你可能会发现你所使用的类是易变的,它们会保持一些状态,因此重用是不安全的。在这种情况下,将 class 声明为单例的就不是那么明智了。因为对象会被污染,稍后重用的时候会出现意想不到的问题。所以 Spring 定义了多种作用域的bean。
在大多数情况下。单例 bean 是很理的方案。不过,有时候你可能会发现你所使用的类是易变的,它们会保持一些状态,因此重用是不安全的。在这种情况下,将 class 声明为单例的就不是那么明智了。因为对象会被污染,稍后重用的时候会出现意想不到的问题。所以 Spring 定义了多种作用域的bean。
# 一 bean的作用域