一.概念
1.SpringMvc:
a.构建在Servlet(api)基础上.
b.是一个Web框架(HTTP).
c.来自于Spring webMVC模块.
2.MVC
二.注册路由的注解
1.@RequestMapping("/test") // 路由注册
注意: 这个注解在类和方法上都要使用,代表不同等级的路由.
2.@RestController
a)@ResponseBody // 告诉程序我返回的是一个数据而非页面
b)@Controller // 让框架启动的时候加载当前(只有加载的类,别人才能使用[访问])
注意: @RestController = @ Controller + @ ResponseBody
3.方法注解: @RequestMapping(valve ="/hi", method = RequestMethod.POST)(一般用下面两种方法)
a)@PostMapping("/hi")
b)@GetMapping("/hi")
三.传参(参数名相同)
1.形参类型使用包装类, 否则(使用基础类型)如果前后端传参错误会报错500.
2.对应多参数,使用对象传参(类在后端实现好),前端传这个类中全部的属性.
3.后端参数映射(重命名): 使用注解@RequestParam
注意: 重命名之后,默认参数必须传递,可以改为不必须传递.
4.JSON: 使用注解@RequestBody
注意: Get方法不能再Body中传输数据.
5.URL传参: 使用注解@PathVariable
6.文件传输(图片,文本,MP3......): 使用注解@RequestPart,注意格式.
7.获取Cookie:
注意: SpringMVC中内置了HttpServletRequest和HttpServletResponse,所以Servlet的那一套方法在这里都可以使用.
a.古老方法: 使用servlet
b.新方法: 使用注解@CookieValue
8.获取Header: 使用注解@RequestHeader
作用:用来获取用户设备类型和浏览器版本号.
9.设置Session: 只能使用古老方法.
10.获取Session: 两种方法
a.古老方法.
b.新方法: 使用注解@SessionAttribute
四.返回
1.返回json格式: HashMap对象
2.重定向和转发