Swagger | 青训营

74 阅读3分钟

1.Swagger简介

1.1 Swagger 的含义

•前后端分离:

  后端:后端控制层、服务层、数据访问层【后端团队】

  前端:前端控制层、视图层【前端团队】

     伪造后端数据,json,已经存在了,不需要后端,前端工程一九可以跑起来

  前后端如何交互?==>API;

  前后端相对独立,松耦合;

  前后端甚至可以部署在不同的服务器上;

•产生一个问题:

  前后端集成协调,前端人员和后端人员无法做到“即时协商,尽早解决”,最终导致问题集中爆发

•解决方案:

  首先指定schema【计划的提纲】,实时更新最新API,降低集成的风险;

  早些年:指定word计划文档;

  前后端分离:

     前端测试后端接口:postman

     后端提供接口,需要实时更新最新的消息及改动!

•Swagger

   °号称世界上最流行的API框架;

   °RestFul Api 文档在线自动生成工具=>Api文档与API定义同步更新

   °直接运行,可以在线测试API接口

   °支持多种语言:(Java,Php)

•官网:swagger.io/

1.2 在项目中使用swagger

1.2.1在项目中使用Swagger需要springbox;

•Swagger2

•ui

1.2.2 Springboot集成Swagger

①新建一个spring boot=web项目

②导入相关依赖

    io.springfox

    springfox-swagger2

    2.9.2

 

    io.springfox

    springfox-swagger-ui

    2.9.2

③编写一个Hello工程

1.2.3 编写一个Hello工程

1.2.4 配置Swagger==>config

1.2.5 测试运行

Swagger信息

接口信息

实体类信息

1.2.6 配置swagger

Swagger的bean实例Docket;

1.2.7 Swagger配置扫描接口

Docket.select()

1.2.8 配置是否启动Swagger

enable(false)

•题目

  我只希望我的Swagger在生产环境中使用,在发布的时候不使用?

°判断是不是生产环境 flag=false

°注入enable()

1.2.9 配置API文档的分组

groupName("hello").
如何配置多个分组

1.2.10 实体类配置

2.springboot

2.1 注解含义

•@Controller 注解用于标识一个类为控制器,它告诉Spring框架该类是一个处理请求的控制器,并且可以通过处理不同的URL请求来返回不同的视图或数据。

•@ResponseBody 注解用于将方法的返回值直接作为响应体返回给客户端,而不是通过视图解析器进行渲染。它通常与 @Controller 注解一起使用,表示该控制器返回的是数据而不是视图。

@RestController 注解将这两个注解结合在一起,用于标识一个类为RESTful风格的控制器。它的作用相当于在一个类上同时添加了 @Controller 和 @ResponseBody 注解

@RequestMapping 是一个Spring MVC注解,用于映射请求的URL路径到控制器的处理方法上

@Bean 是一个注解,用于在 Spring 配置类中声明 Bean。当一个方法被 @Bean 注解修饰时,它将被 Spring 容器解释为声明要创建和配置的一个 Bean 实例。方法的返回值将被注册为一个 Bean,并由 Spring 容器负责实例化、依赖注入和生命周期管理等操作

@Configuration 是 Spring Framework 中的一个注解,用于标识一个类作为配置类。配置类用于定义应用程序的配置信息,包括声明和组装 Bean,配置属性,以及其他应用程序的配置项。