Springfox Swagger3从入门案例

首先,在pom.xml中添加依赖:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-boot-starter</artifactId>
        <version>3.0.0</version>
    </dependency>
</dependencies>

  

创建一个配置类SwaggerConfig.java

package org.example.testdoc.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;

@Configuration
public class SwaggerConfig {
    @Bean
    public Docket api() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("org.example.testdoc.controller"))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("Springfox Swagger3 Example")
                .description("This is an example of using Springfox Swagger3 to generate API documentation.")
                .version("1.0")
                .build();
    }
}

  

创建一个控制器类HelloController.java

package com.example.demo.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {
    @GetMapping("/hello")
    public String hello() {
        return "Hello, Spring Boot!";
    }
}
ExampleController类
package org.example.testdoc.controller;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@Api(value = "Example Controller", tags = "example")
@RestController
public class ExampleController {
    @ApiOperation(value = "Get example data", notes = "This API returns example data.")
    @GetMapping("/example")
    public String getExampleData() {
        return "Hello, World!";
    }
}

主类:

package org.example.testdoc;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.oas.annotations.EnableOpenApi;

@SpringBootApplication
@EnableOpenApi
public class TestdocApplication {

    public static void main(String[] args) {
        SpringApplication.run(TestdocApplication.class, args);
    }

}

查看结果:访问Swagger UI

http://localhost:8080/swagger-ui/index.html

相关推荐

  1. Python爬虫案例分享:入门到精通

    2024-01-27 21:58:04       51 阅读
  2. 入门到高手的99个python案例

    2024-01-27 21:58:04       20 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-27 21:58:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-27 21:58:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-27 21:58:04       87 阅读
  4. Python语言-面向对象

    2024-01-27 21:58:04       96 阅读

热门阅读

  1. C++算法学习心得七.贪心算法(1)

    2024-01-27 21:58:04       47 阅读
  2. 【Axure视频教程】文本替换函数

    2024-01-27 21:58:04       68 阅读
  3. 基于单链表实现通讯录项目

    2024-01-27 21:58:04       63 阅读
  4. GO——context

    2024-01-27 21:58:04       59 阅读
  5. RAG(检索增强生成)在LLM(大型语言模型)中的应用

    2024-01-27 21:58:04       35 阅读
  6. 字符串函数strncpy、strncat、strncmp的功能(3)

    2024-01-27 21:58:04       66 阅读
  7. Android中C++层fstream用法详解

    2024-01-27 21:58:04       49 阅读
  8. CSS--样式穿透

    2024-01-27 21:58:04       66 阅读
  9. Mysql 索引优化

    2024-01-27 21:58:04       64 阅读
  10. K8S、keepalived、haproxy 高可用集群实战

    2024-01-27 21:58:04       47 阅读
  11. CentOS 7 上使用 wget 安装 Nginx 并设置开机自启

    2024-01-27 21:58:04       54 阅读
  12. Dubbo 3.x:探索阿里巴巴的开源RPC框架新技术

    2024-01-27 21:58:04       59 阅读
  13. C#学习笔记_StringBuilder+程序效率测试

    2024-01-27 21:58:04       59 阅读