☀️Terry

- - 草木逢春,雨过天晴🌈。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

POM依赖:

<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.9.2</version>
</dependency>

  

Swagger配置类:

package com.lsr.swagger;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.context.properties.ConfigurationProperties;
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.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
 * @Description : 配置类
 * @program : demo
 * @Package : com.lsr.demo.swagger
 * @Author : Hacker_lsr@126.com
 * @Version : 1.0
 */
@Configuration
@EnableSwagger2
@ConfigurationProperties(prefix = "swagger")
public class SwaggerConfig {
    @Value("${swagger.enable}")
    private boolean enable;
    @Value("${swagger.controller}")
    private String controller;
    @Value("${swagger.title}")
    private String title;
    @Value("${swagger.description}")
    private String description;
    @Value("${swagger.version}")
    private String version;
    @Value("${swagger.license}")
    private String license;
    @Value("${swagger.licenseUrl}")
    private String licenseUrl;
    @Bean
    public Docket createRestApi() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .enable(enable)
                    .pathMapping("/")
                    .select()
                    .apis(RequestHandlerSelectors.basePackage(controller))
                    .paths(PathSelectors.any())
                    .build().apiInfo(new ApiInfoBuilder()
                            .title(title)
                            .description(description)
                            .version(version)
                            .license(license)
                            .licenseUrl(licenseUrl)
                            .build());
        }

}  

application.properties

# swagger配置
#开关 swagger.enable=false
#扫描controller 类包路径 swagger.controller=com.lsr.controller
#标题 swagger.title=Terry Api 测试
#描述 swagger.description=开始测试吧........
#版本 swagger.version=9.2
#外连接 swagger.license=博客
swagger.licenseUrl=https://www.cnblogs.com/hacker-lsr/

  

测试Controller(注解的使用)

package com.lsr.controller;

import com.lsr.entity.BaseEntity;
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.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import sun.management.Agent;

/**
 * @Description : 测试丝袜哥
 * @program : demo
 * @Package : com.lsr.controller
 * @Author : Hacker_lsr@126.com
 * @Version : 1.0
 */
@RestController
@Api(tags = "测试丝袜哥")
@RequestMapping("/test")
public class TestController {
    @PostMapping("/add")
    @ApiOperation("添加用户信息")
    @ApiImplicitParams({@ApiImplicitParam(name ="name",value = "名字",defaultValue = "测试")})

    public BaseEntity insert(String name ,String age){
        return  new BaseEntity();
    }
}

SwaggerUI

 

点击 try it out

 

 输入参数执行Excute

 

 成功:

posted on 2020-01-09 18:24  ☀️Terry  阅读(453)  评论(0编辑  收藏  举报