1、使用@RequestParam绑定请求参数值;
1)、处理方法入参处使用:@RequestParam 可以把请求参数传递到请求方法中;
a:value 参数名
b:required 是否是必须的。默认为true,表示请求参数中必须存在对应的参数,若没有则会抛出异常
2、使用POJO对象绑定请求参数值:SpringMVC会按照请求参数名和POJO属性名进行自动匹配,自动按照对象填充属性值
支持联级属性。
3、SpringMVC 提供了以下几种途径输出模型数据:
1)、ModelAndView:处理方法的返回值类型为 ModelAndView方法,方法可通过该对象添加模型数据;(既包含
视图信息,又包含模型数据信息)
2)、Map 及 Model:map中的数据会自动添加到模型中;
3)、@SessionAttributes:可以将模型中的某个属性暂存到HttpSession中,以便多个请求访问该属性;
4)、@ModelAttribute:方法入参标注该注解后,入参对象会自动保存到数据模型当中;
4、处理器的返回值是ModelAndView 既包含视图信息又包含模型数据信息;
5、Map 和 Model
SpringMVC 在调用方法前会创建一个隐含的模型对象作为模型数据的储存容器;
6、@SessionAttribute 若希望多个请求公用一个模型数据 则可以在控制器类,标注@SessionAttrbute SpringMVC 就会将模型中的数据暂时存放在 HttpSession 中
7、@SessionAttribute 除了可以通过属性名将 指定的属性放在 会话当中 还可指定对应的 对象类型放在会话当中;
注意:由于@SessionAttrtube 引发的异常: 如果在 控制器类 标注了@SessionAttrtube 则 尝试从会话当中回去该属性,并将其赋给入参,然后将请求参数赋给入参
对象 ,如果找不到对应的属性则会抛出 HttpSessionRequiredException 异常;