springBoot与swagger整合

2018-05-17  本文已影响0人  亭台雨榭111

Swagger是目前比较流行的文档生成工具,其具有一下优点:
1.Swagger可以生成一个具有互动性的api控制台,开发者可以使用该平台来学习和理解api接口.
2.Swagger可以生成客户端SDK代码用户各种不同平台的实现
3.Swagger 文件可以在许多不同的平台上从代码注释中自动生成
下面是springBoot与Swagger整合实例,别的不多说直接上代码:
搭建项目的最终实例:


image.png

下面开始搭建(我们使用的maven进行代码管理):
一.引入依赖到pom.xml中


<!-- Swagger -->
    <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>2.7.0</version>
    </dependency>

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

二.生成Swagger配置类


package com.example.demo.swaggerdemo;

import com.google.common.base.Predicate;
import org.springframework.boot.autoconfigure.web.BasicErrorController;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;

import springfox.documentation.RequestHandler;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**


三.在类上面或者在方法上面添加注解:


@RequestMapping(value = "/getUserInfo" ,method = RequestMethod.GET)
@ResponseBody
@ApiOperation(value = "测试接口",notes = "获取用户名称")
public Map getUserInfo(String userId,String type){
Map<String, Object> map = new HashMap<String,Object>();
System.out.println(userId);
System.out.println(type);
String userName = myService.getUserName();
logger.info("获取对应的用户name:{}",userName);
map.put("name",userName);
return map;
}


四.启动springBoot项目,访问swagger的控制页面


访问页面的网址:
http://localhost:8080/swagger-ui.html#


到此就完成了springBoot和Swagger的集成,快点去试试吧!

上一篇下一篇

猜你喜欢

热点阅读