首页 > 试题广场 >

关于SpringMVC,以下说法错误的是?()

[单选题]
关于SpringMVC,以下说法错误的是?()
  • SpringMVC的核心入口是DispatcherServlet
  • @RequestMapping注解既可以用在类上也可以用在方法上
  • @PathVariable作用是取出url中的模板变量作为参数
  • controller默认是单例,通过@Scope(“prototype”)注解改为多例,成员变量共享
单例模式下会共享普通成员变量和静态成员变量,多例模式下普通成员变量不共享,静态成员共享. 
在开发中,springMVC优先使用单例模式,而且尽量不要在controller中设定成员变量. 
如果要定义成员变量并为成员变量赋值可以配置source.properties,通过读取配置文件为成员变量初始化. 

发表于 2019-03-14 14:44:22 回复(0)
选项A错误,是DispatcherServlet,少写了er
发表于 2019-03-16 23:58:42 回复(3)
@Scope(“prototype”)表示每获取一个bean创建一个对象。这虽然看起来是多例。但成员变量并不共享。
要想成员变量共享,可设置为“session”或“globalSession”
发表于 2019-03-16 08:44:44 回复(0)
作用域为prototype就是每次调用bean都会生成一个新的bean实例。那成员变量当然不共享。你一个类,生成多个实例,每一个实例之间的成员变量怎么会共享呢?
反而是默认情况下的单例作用域singleton,因为每一个bean都是相同的实例,这时候才是共享成员变量。

这是D错的地方。 A的话的确漏了er,不过估计题目本意不是这样的。牛客网的垃圾题不少的,光是JS题,明明JS是大小写敏感的,结果一会是Object,一会又object,很不专业。所以在其他答案都错的时候再去纠结文字问题吧,可能只是题目zz而已。
发表于 2019-08-01 15:11:21 回复(0)