1.什么是单例模式?
一个类有且仅有一个实例,并且自行实例化向整个系统提供,所有的请求都用一个对象进行处理。
2.SpringMVC的Controller
SpringMVC的Controller默认是单例的,可以通过@Scope("prototype")改成多例。
3.原因:
具体原因也不好说,一是性能要求,二是一般情况下不需要多例(并不是不能)
4.注意事项:
如果使用单例模式,不要在Controller中定义成员变量,否则会造成线程不安全的问题。如果实在要使用成员变量,那么就通过@Scope("prototype")改成多例。