springboot集成Swagger2「建议收藏」

springboot集成Swagger2「建议收藏」Swagger2简介 我们提供Restful接口的时候,API文档是尤为的重要,它承载着对接口的定义,描述等。它还是和API消费方沟通的重要工具。在实际情况中由于接口和文档存放的位置不同,我们很难及时的去维护文档。1.随项目自动生成强大RESTful API文档,减少工作量2.API文档与代码整合在一起,便于同步更新API说明3.页面测试功能来调试每个RESTful API…

大家好,又见面了,我是你们的朋友全栈君。

Swagger2简介

       我们提供Restful接口的时候,API文档是尤为的重要,它承载着对接口的定义,描述等。它还是和API消费方沟通的重要工具。在实际情况中由于接口和文档存放的位置不同,我们很难及时的去维护文档。

1.随项目自动生成强大RESTful API文档,减少工作量
2.API文档与代码整合在一起,便于同步更新API说明
3.页面测试功能来调试每个RESTful API

项目搭建

    添加依赖:
    

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

创建Swagger2配置类

导入相应的包即可。将指定扫描包下的注解 改成 自己的包名称

@Configuration
@EnableSwagger2
public class SwaggerConfig {
    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.sss"))// 指定扫描包下面的注解
                .paths(PathSelectors.any())
                .build();
    }
    // 创建api的基本信息
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("集成Swagger2构建RESTful APIs")
                .description("集成Swagger2构建RESTful APIs")
                .termsOfServiceUrl("https://www.baidu.com")
                .contact("itlike")
                .version("1.0.0")
                .build();
    }
}

新建测试类:

@Api(value="用户controller",tags={"用户操作接口"})
@RestController
public class userController {

    @Autowired
    private HeroService heroService;

        // 根据当前的id获取记录
        @ApiOperation(value="获取Hero信息",notes="注意问题点",httpMethod="GET")
        @ApiImplicitParams({@ApiImplicitParam(name="id",value="用户id",dataType="Long", paramType = "path")})
        @GetMapping("/test/{id}")
        @ResponseBody
        public Hero test(@PathVariable("id") Integer id, Model model) {

            Hero hero = heroService.getOneHero(id);
            return hero;
        }
    }

启动类,访问   http://localhost:8080/swagger-ui.html

springboot集成Swagger2「建议收藏」

点击获取信息展开详细信息:

springboot集成Swagger2「建议收藏」

查询结果:

springboot集成Swagger2「建议收藏」

到此,springboot集成swagger2完成。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/147163.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • PostgreSQL 10.1 手册_部分 III. 服务器管理_第 20 章 客户端认证

    PostgreSQL 10.1 手册_部分 III. 服务器管理_第 20 章 客户端认证

    2021年6月14日
    80
  • maven的使用教程_maven使用教程

    maven的使用教程_maven使用教程maven面临的问题一个项目就是一个工程。如果项目非常大,最好是每一个模块对应一个工程。借助maven可以将一个项目拆分成多个工程项目中需要的jar必须要手动”复制”,”粘贴”到WEB-INF/lib目录下,带来的问题是:同样的jar包文件重复出现在不同的项目工程中,浪费空间。maven可以将jar仅仅保存在”仓库”中,有需要使用的工程”引用”这个文件接口,并不需要真的把jar包复制过来jar包需要别人替我们准备好,或到官网下载。不同技术的官网提供jar包下载的形式是五花八门的,有些技术的官网就是

    2022年8月8日
    1
  • jsp调用getParameterValues获取表单信息

    jsp调用getParameterValues获取表单信息1.新建一个DynamicWebProject项目,里面新建两个jsp文件,整体的结构如下所示:2.one.jsp文件里面的代码如下所示:<%@pagelanguage="java"contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"%>example 选择你去过的城市:

    2022年7月22日
    11
  • LLDP协议、STP协议 笔记

    LLDP协议、STP协议 笔记参考:数据链路层学习之LLDP生成树协议LLDP协议、STP协议笔记LLDP提出背景:随着网络技术的发展,接入网络的设备的种类越来越多,配置越来越复杂,来自不同设备厂商的设备也往往会增加自己特有的功能,这就导致在一个网络中往往会有很多具有不同特性的、来自不同厂商的设备,为了方便对这样的网络进行管理,就需要使得不同厂商的设备能够在网络中相互发现并交互各自的系统及配置信息。L…

    2022年6月2日
    29
  • 云从的多粒度网络(MGN)的结构设计与技术实现-ReID行人重识别「建议收藏」

    云从的多粒度网络(MGN)的结构设计与技术实现-ReID行人重识别「建议收藏」云从的多粒度网络(MGN)的结构设计与技术实现-ReID1.摘要全局特征和局部特征的结合是提高人的再识别(re-ID)任务识别性能的一种有效方法。以前的基于部分的方法主要集中在定位具有特定预定义语义的区域来学习局部表示,这增加了学习的难度,但对具有较大方差的场景却没有效率或鲁棒性。本文提出了一种融合不同粒度判别信息的端到端特征学习策略。我们仔细设计了多粒度网络(MGN),这是一个多分支的深层网…

    2022年10月5日
    0
  • dede首页调用分类信息

    dede首页调用分类信息

    2021年9月20日
    47

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号