SpringBoot基础

SpringMVC

表现层框架技术 用于表现层开发

Postman

网页调试与发送网页HTTP请求的CHrome插件

常用于进行接口测试

Apifox

集Postman Swagger Mock JMeter于一体

请求映射路径

在类上面定义请求路径前缀 @RequestMapping("/user")

请求参数

  • 普通参数

  • POJO参数 请求参数名与形参对象属性名相同 定义POJO类型形参即可接收

  • POJO嵌套 POJO对象包含POJO对象

  • 数组参数 同样的变量名

  • 集合参数 @RequestParam

接受请求中的json数据

  1. 配置坐标
  2. 设置发送json数据 Body-raw-json
  3. 开启自动转换数据的支持 @EnableWebMvc
  4. 设置接收json数据 @RequestBody

@RequestBody 与 @RequestParam

区别

param用于接受url地址 表单传参 application/x-www-form-urlencoded

body用于接收json数据 application/json

应用后期 发送json数据为主 body应用广泛

响应

  • 响应页面 跳转界面

返回值 String retrun"page.jsp";

  • 响应文本数据

返回值 String 添加注释 @ResponseBody return "response txt";

  • 响应POJO对象

返回值 对象类型 添加注释 @ResponseBody return 对象;

  • 响应集合

返回值 集合类型

@ResponseBody(类型转换器 HttpMessageConverter)

REST风格

(表现形式状态转换)

隐藏资源的访问行为 无法通过地址得知对资源是何种操作 书写简化

用REST风格对资源进行访问称为RESTfull

常用标准动作 GET POST PUT DELETE

指定请求行为 @RequestMapping(value="/users",method=RequestMethod.POST)

如果需要传参数 形参添加注释@pathVariable 路径添加 /{参数名}

RESTfull快速开发

@RequestMapping 可根据具体请求操作更改 @PostMapping @GetMapping 等等

@Contoller与@ResponseBody合并为 @RestController @RequestMapping(“公共前缀”)

拦截器Interceptor

动态拦截方法调用的机制

  • 在指定的方法调用前后执行预定设定的代码
  • 阻止原始方法执行

image-20240511211135638

拦截器与过滤器

归属不同 :Filter属于servlet技术 Interceptor属于SpringMVC技术

拦截内容不同 Filter对所有访问进行增强 Interceptor仅对SpringMVC的访问进行增强