swagger使用

2023-05-16

第一步,配置pom文件。在pom文件中引入swagger的相关依赖

        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.9.2</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.8.0</version>
        </dependency>

遇到问题可能原因:
这个问题解决办法是因为swagger依赖google的guava,而你当前项目的guava版本与之不匹配,而我因为使用当前最新的swagger2版本,我就将guava升到最新的版本,guava版本必须和spring-boot版本匹配

       <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>25.1-jre</version>
        </dependency>

第二步,写配置文件

@Configuration
@EnableSwagger2
public class Swagger2Configuration {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))
                .paths(PathSelectors.any())
                .build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("负载均衡接口文档")
                .description("slb相关接口的文档")
                .termsOfServiceUrl("http://www.xxx.com")
                .version("1.0")
                .build();
    }

}

第三步:增加相关的注解

@Api(value = "AdminUserController ")
@RestController
@RequestMapping("/admin/user")
public class AdminUserController{
    /**
     * 用户登录
     */
    @ApiOperation(value = "登录")
    @ApiImplicitParams({@ApiImplicitParam(name = "userName", value = "用户名", required = true, dataType = "String"),
            @ApiImplicitParam(name = "password", value = "密码", required = true, dataType = "String")})
    @PostMapping("/login")
    public String login(String userName, String password){
        return "用户信息是 "+userName+":"+password;
    }

    /**
     * 查看列表
     */
    @ApiOperation(value = "查看")
    @PostMapping("/view")
    public String view(){
        return "请开始表演 ";
    }
}

注意这里的@Api注解,写在类上的,与我们的配置类相对应。介绍一下相关的注解

@Api: 描述 Controller
@ApiIgnore: 忽略该 Controller,指不对当前类做扫描
@ApiOperation: 描述 Controller类中的 method接口
@ApiParam: 单个参数描述,与 @ApiImplicitParam不同的是,他是写在参数左侧的。如( @ApiParam(name="username",value="用户名")Stringusername@ApiModel: 描述 POJO对象
@ApiProperty: 描述 POJO对象中的属性值
@ApiImplicitParam: 描述单个入参信息
@ApiImplicitParams: 描述多个入参信息
@ApiResponse: 描述单个出参信息
@ApiResponses: 描述多个出参信息
@ApiError: 接口错误所返回的信息

接下就是启动项目,访问http://localhost:9000/swagger-ui.html这个地址,这里的9000是我的项目设置端口号,你打开应该是你自己的项目的端口号,就能看到相关的信息。
在这里插入图片描述

在这里插入图片描述
详细可以参考下边文章
https://blog.csdn.net/weixin_45442617/article/details/108875718

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

swagger使用 的相关文章

随机推荐

  • tail -f 在串口中查看日志文件

    tail f opt log log mi tail follow opt log log mi 如果想从串口中查看日志文件 用tail 命令就可以了
  • 10-WorkManager

    WorkManager 文章目录 WorkManager概览使用入门将WorkManager添加到项目中创建后台任务配置运行任务的方式和时间将任务提交给系统后续步骤 方法指南定义WorkRequest工作约束初始延迟重试和退避政策定义任务的
  • 11-保存状态

    保存状态 文章目录 保存状态用户预期和系统行为用户发起的界面状态解除系统发起的界面状态解除 用于保留界面状态的选项使用 ViewModel 处理配置更改使用 onSaveInstanceState 作为后备方法来处理系统发起的进程终止针对复
  • 12 - ViewModel的已保存状态模块

    ViewModel的已保存状态模块 文章目录 ViewModel的已保存状态模块设置和使用存储和检索值可接受的类其他资源Codelab ViewModel 对象可以处理配置更改 xff0c 因此您无需担心旋转时或其他情况下的状态 但是 xf
  • 13 - 将Kotlin协程与架构组件一起使用

    将Kotlin协程与架构组件一起使用 文章目录 将Kotlin协程与架构组件一起使用添加KTX依赖项生命周期感知型协程范围ViewModelScopeLifecycleScope 暂停生命周期感知型协程将协程与LiveData一起使用其他资
  • Android读取Word文档

    附注 xff1a 本文使用的jar包是tm extractors 0 4的jar包 xff08 麻烦自己自行搜索并下载 xff09 xff0c 地址稍后再补上来 读取隐私协议文档内容 64 return private String sho
  • Android studio中“import org.apache.http.Header;”没用?

    Android M 起默认移除了Apache HTTP xff1a https developer android com intl zh cn preview behavior changes html 要使用的话 xff0c 要这么干
  • 解决华为手机不显示Log日志

    1 xff09 进入工程模式 有两种方式可以进入工程模式 xff1a a 在拨号界面输入 2846579 b 若是小米4 0系统 MIUI xff0c 进入 设置 gt 全部设置 gt 原厂设置 gt 工程模式 2 打开Log 1 依次进入
  • 将字符串时间转为毫秒值

    将字符串格式的时间转为毫秒值 64 param dateTime 字符串时间 xff08 格式 xff1a 2015 12 31 23 59 53 xff09 64 return public Long getLongFromString
  • 在Android Studio中使用JUNIT测试

    单元测试 xff08 unit testing xff09 xff0c 是指对软件中的最小可测试单元进行检查和验证 比如一个函数 xff0c 一个方法等 本文概述的内容 xff1a 在Android Studio中初步使用JUNIT测试 步
  • (极力推荐)BW:How to load and generate a custom hierarchy in SAP Business Warehouse (SAP BW) without using flat files

    这篇文章 xff0c 真是救了哥 xff0c 所以非常感谢这位作者 你看 xff0c 人家也是 2011 年 2 月 3 号才写的 xff0c 量身打造 xff0c 多好的人 xff0c 刚好赶上我了 PS xff1a 前段时间设计的文本抽
  • Windows Media Player控件研究

    初级问题 xff1a 我的那个定时提醒程序中要用到它 xff0c 初步使用问题已解决 基本使用步骤如下 xff1a 一 往控件箱中添加此控件 xff1a wmp dll 二 往窗体上拖控件 三 wmp URL 61 XXXX wmp pla
  • The SDK platform-tools version(24) is too old to check APIs compiled with API 25

    在实际开发中 xff0c 我们有时候会遇到红色的warning xff1a The SDK platform tools version 24 is too old to check APIs compiled with API 25 直白
  • Collections.sort和Arrays.sort在jdk1.6和jdk1.7中区别

    1 写这边文章的原因 xff1a 最近在线上产品环境发现了部分用户数据返回排序问题 xff08 和之前理想中的排序不太一样 xff09 xff0c 由于服务器是集群配置 xff0c 猜测肯定是某一台排序服务出了问题 xff08 之前工作中也
  • 【软件项目管理】任务(活动)之间的排序依据主要有:强制性依赖关系、软逻辑关系、外部依赖关系

    任务 xff08 活动 xff09 之间的排序依据主要有 xff1a 强制性依赖关系 软逻辑关系 外部依赖关系 项目各项任务 xff08 活动 xff09 之间存在相互联系与相互依赖关系 xff0c 根据这些关系安排各项活动的先后顺序 确定
  • Nginx支持http重定向https(ipv4和ipv6)

    http重定向为https server span class token punctuation span listen span class token number 8088 span span class token punctua
  • SCP文件传输命令用法

    1 传输到使用秘钥登陆的虚机上 scp i slb id rsa P 6233 tmp slb lb agent jar root 64 100 123 0 117 usr sbin scp i 秘钥地址 P 端口 需要传输的文件路径 ro
  • Nginx限制并发连接数和带宽

    并发连接数 SBC xff08 Simultaneous Browser Connections xff09 并发连接数指的是客户端向服务器发起请求 xff0c 并建立了TCP连接 每秒钟服务器链接的总TCP数量 xff0c 就是并发连接数
  • 设置Linux内核参数 /etc/sysctl.conf

    proc sys目录下存放着大多数的内核参数 xff0c 并且设计成可以在系统运行的同时进行更改 不过重新启动机器后会失效 xff0c 可以通过更改 proc sys中内核参数对应的文件 etc sysctl conf 的内核参数来永久更改
  • swagger使用

    第一步 xff0c 配置pom文件 在pom文件中引入swagger的相关依赖 span class token generics span class token punctuation lt span dependency span c