Spring Controller相关的问题

来源:9-3 Spring与线程安全

高秋

2019-02-25

这里的controller默认是单例的,是否说明每个request过来,开启的对应线程,都是共享这一个controller对应的成员对象?那这样的话,除了在conteoller方法中new出来的本地对象(比如数据库连接之类的)其他的controller所拥有的对象是否都要考虑线程安全的情况?

写回答

1回答

Jimin

2019-02-25

你好,如果是static域的对象,才是需要考虑线程安全问题。单独一个方法内部new出来的对象,且没有传出方法外,是不涉及线程安全问题的。

1
2
Jimin
如果这个v可能被更新,就需要考虑线程安全的,这个v像极了我们代码里的自动注入的bean,自动注入的bean因为我们不去修改,因此虽然多线程共享但并不会有线程安全问题(本质上是无状态与有状态的区别)
2019-02-25
共2条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程