MVC简介:
Spring MVC是一套Spring后台研发的框架,M为模型,即整个框架的操作元;V为视图,提供给Web用户的输出窗口;C为控制器,即内部逻辑,处理用户输入及输出内容。相较于SSH的后台,前端,数据库分离设计,SSM(Spring+SpringMVC+Mybatis)的设计以后台为主导,Controller与View的关系更密切,且View更依赖Controller的结构。
项目目录:
view通常位于webapp-WEB-INF-views下(如home.jsp)
controller通常位于java-某个模块-XxxController。使用@Controller和@RequestMapping("域名")定义controller类,用@ResponseBody,@RequestMapping(value = "addBlackListService", method = RequestMethod.POST)定义Controller方法,对view提供的输入处理,并定义输出给view的内容。
SpringMVC常用注解:
@Controller
负责注册一个bean 到spring 上下文中。
@RequestMapping
该注解为控制器指定可以处理哪些 URL 请求。
XXXXX待看完视频补充XXXXX
RequestMapping参数:method,
@RequestBody
该注解用于读取Request请求的body部分数据,使用系统默认配置的HttpMessageConverter进行解析,然后把相应的数据绑定到要返回的对象上 ,再把HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。
@ResponseBody
该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。
@ModelAttribute
在方法定义上使用 @ModelAttribute 注解:Spring MVC 在调用目标处理方法前,会先逐个调用在方法级上标注了@ModelAttribute 的方法。
在方法的入参前使用 @ModelAttribute 注解:可以从隐含对象中获取隐含的模型数据中获取对象,再将请求参数–绑定到对象中,再传入入参将方法入参对象添加到模型中。
@RequestParam
在处理方法入参处使用 @RequestParam 可以把请求参 数传递给请求方法。
@PathVariable
@ExceptionHandler绑定 URL 占位符到入参。
注解到方法上,出现异常时会执行该方法。
@ControllerAdvice
使一个Contoller成为全局的异常处理类,类中用@ExceptionHandler方法注解的方法可以处理所有Controller发生的异常。