博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SpringBoot之集成swagger2
阅读量:6311 次
发布时间:2019-06-22

本文共 3256 字,大约阅读时间需要 10 分钟。

maven配置

io.springfox
springfox-swagger2
2.5.0
io.springfox
springfox-swagger-ui
2.5.0

 

 

增加Swagger2Config.java配置文件
package com.zns.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.service.Contact;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2;@Configuration@EnableSwagger2public class Swagger2Config {    //是否线上环境 可以通过文件配置是否线上环境 此处直接写死    private Boolean isOnLineFlag = false;    @Bean    public Docket createRestApi() {        if (isOnLineFlag) {            return new Docket(DocumentationType.SWAGGER_2)                    .apiInfo(apiInfoOnline())                    .select()                    .paths(PathSelectors.none())//如果是线上环境,添加路径过滤,设置为全部都不符合                    .build();        } else {            return new Docket(DocumentationType.SWAGGER_2)                    .apiInfo(apiInfo())                    .select()                    .apis(RequestHandlerSelectors.basePackage("com.zns"))                    .paths(PathSelectors.any())                    .build();        }    }    private ApiInfo apiInfo() {        return new ApiInfoBuilder()                //页面标题                .title("Spring Boot 测试使用 Swagger2 构建RESTful API")                //创建人                .contact(new Contact("xxx", "http://www.xxx.com", ""))                //版本号                .version("1.0")                //描述                .description("API 描述")                .build();    }    private ApiInfo apiInfoOnline() {        return new ApiInfoBuilder()                .title("")                .description("")                .license("")                .licenseUrl("")                .termsOfServiceUrl("")                .version("")                .contact(new Contact("", "", ""))                .build();    }}

 

 

增加StudentController测试

package com.zns.controller;import io.swagger.annotations.Api;import io.swagger.annotations.ApiImplicitParam;import io.swagger.annotations.ApiImplicitParams;import io.swagger.annotations.ApiOperation;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.RestController;@Api(value = "student", description = "学生", tags = {"Student"})@RestControllerpublic class StudentController {    @ApiOperation(value = "根据id查询学生信息", notes = "根据id查询学生信息")    @ApiImplicitParams({            @ApiImplicitParam(name = "id", value = "学生ID", defaultValue = "1", required = true, dataType = "Integer")    })    @RequestMapping(value = "/get", method = RequestMethod.POST)    public Object get(Integer id) {        return "xxx";    }}

 

启动项目访问接口文档

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

 

转载于:https://www.cnblogs.com/zengnansheng/p/10389819.html

你可能感兴趣的文章
苹果将iOS应用带入macOS
查看>>
react入门
查看>>
VUE高仿饿了么app
查看>>
针对Kubernetes软件栈有状态服务设计的思考
查看>>
你的可用性达标了吗?云端业务性能高可用的深度实践
查看>>
linux yum清缓存脚本
查看>>
基于epoll封装的事件回调miniserver
查看>>
天猫高管全面解读大快消2018新零售打法
查看>>
idea springboot热部署无效问题
查看>>
第八章 进程间通信
查看>>
HttpSession接口中的方法(Jsp中的session类的用法)
查看>>
「镁客早报」AI可预测心脏病人死亡时间;机器人开始在美国送外卖
查看>>
MoQ(基于.net3.5,c#3.0的mock框架)简单介绍
查看>>
物联网全面升级,十年内推动工业进入智能化新阶段
查看>>
spring-通过ListFactory注入List
查看>>
一种基于SDR实现的被动GSM嗅探
查看>>
阿里云ECS每天一件事D1:配置SSH
查看>>
SQL Server 性能调优(性能基线)
查看>>
uva 10801 - Lift Hopping(最短路Dijkstra)
查看>>
[Java Web]servlet/filter/listener/interceptor区别与联系
查看>>