栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Spring MVC控制器内部的私有方法是线程安全的

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Spring MVC控制器内部的私有方法是线程安全的

所有请求均由控制器的一个实例处理(单例,因为它是一个Spring托管bean)。因此,您需要确保不存储与一个请求相关的任何状态(在字段中)。

所以:

@Controller@RequestMapping("/foo")public class Foo {    @Autowired    private Something something;    @RequestMapping("/list")    public String foo() {       something.someMethod();       bar();       return "view"    }    private void bar() {        // something    }}

可以,但是:

@Controller@RequestMapping("/foo")public class Foo {    private User theUser; // problem is ALL request share this field    @RequestMapping("/foo/{userId}")    public String foo(@PathVariable final Integer userId) {       if (theUser.getId().equals(userId)) {// something       } else {theUser = ...       }       return "view"    }}

不是。

注意:未经测试(在此处键入内容可能会伤害您的编译器)



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/385889.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号