为了账号安全,请及时绑定邮箱和手机立即绑定

springmvc中controller注入了service后为什么还是线程安全的?

/ 猿问

springmvc中controller注入了service后为什么还是线程安全的?

HUH函数 2018-10-05 11:31:12

都说springmvc是线程安全的。我知道无状态的对象一定是线程安全的。但是Controller中注入了Service后,不就变成了有状态的对象了,那它还是线程安全的吗?

//无状态
public class UserController {
    }
    
//有状态
public class UserController {
    int a;
}

//?????

public class UserController {
    @AutoWired
    private UserService userService;
    
}

希望懂的人给小弟解惑。谢谢!
补充:我知道ThreadLocal和单例多例(scope=prototype)的相关知识,只想知道上面我描述的有状态和无状态的情况。


查看完整描述

2 回答

?
米脂

@Controller 默认实现的单例模式

查看完整回答
反对 回复 2018-10-11
?
烙印99

你没搞清楚线程安全是什么意思。userService本身并不是线程安全的,你在userController里修改userService吗?只是调用userService里的方法吧?方法都是线程安全的,多线程调用一个实例的方法,会在内存中复制变量,所以只要你不在userConstroller里修改userService这个实例就没问题。

查看完整回答
反对 回复 2018-10-11

添加回答

回复

举报

0/150
提交
取消
意见反馈 邀请有奖 帮助中心 APP下载
官方微信