Spring MVC 和 Servlet 一样,不是线程安全的,

Spring MVC的Controller默认使用单例

因为:

1、性能好

2、没有必要用多例

所以:

1、在controller中定义成员变量,并且对成员变量存在写操作就会存在线程安全问题。

2、万一必须要定义一个非静态成员变量时候,则通过注解@Scope("prototype"),将其设置为多例模式。或者仍然使用默认单例方式,对于要共享对象属性,可以用ThreadLocal保护。

写操作存在线程安全问题:

springboot中的一个线程安全问题

 

相关文章:

  • 2022-12-23
  • 2022-01-19
  • 2022-12-23
猜你喜欢
  • 2022-01-07
  • 2021-12-04
  • 2021-10-21
  • 2021-07-04
  • 2022-12-23
相关资源
相似解决方案