我不理解Spring MVC的流程,下面是我所面临的一些疑惑。谁在spring-mvc中执行请求参数绑定和类型转换?
@RequestMapping(value = "/addUser",method = RequestMethod.POST)
public ModelAndView addUser(@RequestParam("name") String name, @RequestParam("age") Integer age)
{
// demo method
}
- 如何在
name
和age
领域具有约束力?我是谁做的(任何拦截器)? - 谁在解析
age
字段为Integer? - 谁约束
User
在下面的例子中标记为@ModelAttribute
的对象?
模型属性结合
@RequestMapping(method = RequestMethod.POST, value = "doLogin")
public ModelAndView doLogin(@ModelAttribute("user") User userModel, HttpSession httpSession)
{
}
- 我们如何在上述方法中获得的
HttpSession
对象?我的意思是流动的。 - 在春天组件的范围是
Singleton
,那么如果我有1000个用户访问我的web应用程序不是每个用户都会得到不同的对象吗?那么它怎么样singleton
?
我不明白Singleton部分,请详细说明它。考虑我有一个用户模型,对于每个请求我有不同的值的用户,那么它是怎么样的单身人士。 – piechuckerr
'User'对象不是一个Spring组件,它不是一个生命周期被管理的bean,因为它是一个Spring组件,例如,控制器类,服务或其他用例如'@ Component','@ Repository','@ Service'。 所以'用户'类不是一个singleton –
对不起,对于后面的回复,但'用户'类的类定义是用'@ Component'注释的。是不是那个意思请求映射'User'与Spring容器构造的那个相同? – piechuckerr