本文主要介绍springbean singleton和多个singleton(spring boot singleton bean),下面一起看看springbean singleton和多个singleton(spring boot singleton bean)相关资讯。
在spring中,bean可以定义为两种模式:原型和单例。
singleton:只存在一个共享实例,对此bean的所有请求都将返回这个唯一的实例。
原型(多实例):对这个bean的每个请求都将创建一个新的bean实例,类似于new。
默认情况下,spring bean是单例模式。
结论:两个变量指向一个对象。
将配置文件更改为:
结论:每次访问一个bean,都会创建一个新的实例。
此外,如果您想要在springboot项目中配置一个或多个实例,您可以向相应的bean添加一个annotation @scope。
spring bean是线程安全的无状态bean,也就是说,线程中的操作不会对bean的成员执行除查询之外的操作,那么这个单例bean就是线程安全的。比如spring mvc的控制器、服务、dao,大多是无状态的,只关注方法本身。
有状态bean:有实例变量的对象,可以保存数据,是线程安全的。
对于有状态bean,spring官方提供的bean一般都会提供通过threadlocal解决线程安全的方法,比如requestcontextholder、transactionsynchronization manager、localecontextholder等。
blog . csdn . net/ _ 35860138/article/details/88798726
标签:
线程实例
了解更多springbean singleton和多个singleton(spring boot singleton bean)相关内容请关注本站点。