在Spring中实现REST的情况下,spring控制器是单例。我想知道为什么弹簧控制器除了线程安全问题外都是单例。请帮助解决这个问题。
答案 0 :(得分:12)
这与REST无关。
默认情况下,Spring bean是singleton作用域。由于组件扫描@Controller
带注释的类只是生成一个bean,该bean将是单例作用域。
由于@Controller
bean应该是无状态的原因,请阅读以下任何内容:
为了跟进REST问题,REST意味着无状态。换句话说,每个请求都包含服务器处理它所需的所有信息。知道这一点,对于服务器来说是没有意义的(或者@Controller)
在实例字段等处理完请求之后保留任何信息。因此,单身是可行的。< / p>