Swagger3 tutorial de uso
Como a tecnologia do Swagger2 ficou para trás { O Swagger2 interrompeu a manutenção em 2017 e o substituiu pelo Swagger3} Também precisamos atualizar a tecnologia, portanto, também forneceremos o uso do Swagger3 aqui
1. Entendendo o Swagger
1.Swagger
swagger é uma organização de manutenção de documentos de API e, posteriormente, tornou-se o principal definidor do padrão Open API
2. Abra a API
O nome completo da API é Application Programming Interface (Application Programming Interface).
Na era da Internet, os serviços de sites são empacotados em uma série de interfaces de dados que são facilmente reconhecíveis por computadores e abertas para uso por desenvolvedores terceirizados. Esse comportamento é chamada de API de site aberto, que é semelhante a Correspondentemente, a API aberta é chamada de API aberta.
3. Vantagens do Swagger (resumo pessoal)
- Ferramenta de geração on-line de documento da API RestFul—>>>O documento da API e a API são atualizados de forma síncrona
- Pode ser executado diretamente e a interface da API pode ser testada online
- Suporta vários idiomas: (Java, php...)
2. Uso de SpringBoot + Swagger3
1. Importação de dependências maven
O Swagger2 precisa importar duas dependências de recursos:
#Swagger2资源依赖
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.9.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.9.2</version>
</dependency>
Swagger3 só precisa importar uma dependência de recurso:
# Swagger3资源依赖
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-boot-starter -->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
2. Criação do controlador Swagger3
package cn.netxiaobao.demo;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.oas.annotations.EnableOpenApi;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
@EnableOpenApi //开启Swagger3
@Configuration
public class Swagger3 {
@Bean
public Docket docket() {
return new Docket(DocumentationType.OAS_30) // v2 不同
.select()
.apis(RequestHandlerSelectors.basePackage("cn.netXiaobao.demo"))//设置扫描路径
.build();
}
}
As anotações do Swagger3 são as mesmas do Swagger2, não há necessidade de substituir