1.@Controller这个就不解释了 注解一个类为Controller
2.Spring MVC 配置文件中的试图解析器
<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix">
<value>/WEB-INF/jsp/</value>
</property>
<property name="suffix">
<value>.jsp</value>
</property>
</bean>
3.@RequestMapping(value="",method={RequestMethod.POST},params="")
①此时jsp页面的表单使用 post方法 若不加 method={RequestMethod.POST} 则可以处理任意的HTTP请求方式 params 指定request中必须包含某些参数值时,才让该方法处理
②注解在方法上,可以使用http://localhost:8080/项目名/value的值访问该方法
③注解在类上,所有路径都加上/value的值 这是需要注意jsp页面到Controller的方法的路径问题
4.Model,ModelMap,ModelAndView 区别
①使用其对象存储数据 model.addAttribute("user",user); modelMap.addAttribute("user",user); modelAndView.addObject("user",user);
②ModelAndView 可添加视图路径(前端页面路径) modelAndView.setViewName("路径")
③获取存储数据 User user =(User) model.asMap().get("user"); User user =(User) modelMap.get("user"); User user =(User) modelAndView.getModel().get("user");
④作用域相当于 request
5.@RequestParam(value="",name="",required=ture/false,defaultValue="") 在方法的参数位置
①name 指定请求头绑定的名称
②value name属性的别名
③required 为true时 不传参会报错
④defaultValue 如果没有传参则使用默认值
6.@SessAttribute(names="",types={User.class,Boke.class},value={"user","results"})
①names model中的属性名
②value names的别名
③types 指定参数是否必须绑定(我理解的是 value 对应的类型)
7.@ModelAttribute(value="") 注:只有这一个属性 属性类型为String
①注释在方法上 这时会在Controller的每个方法执行前被调用,因此,在一个Controller映射多个URL时,要谨慎使用
②注释返回具体类的方法
③注释 void 返回值方法
④注释返回具体类的方法
⑤@ModelAttribute 和 @RequestMapping同时注释一个方法 百度
⑥注释一个方法的参数