zoukankan      html  css  js  c++  java
  • swagger demo code

    //Application 开启注解

    @EnableSwagger2
    public class Application {
    public static void main(String[] args) {
    SpringApplication.run(Application.class, args);
    }
    }

    pom.xml

                    <!-- Swagger -->
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger-ui</artifactId>
                <version>2.8.0</version>
            </dependency>
            <dependency>
                <groupId>io.springfox</groupId>
                <artifactId>springfox-swagger2</artifactId>
                <version>2.8.0</version>
            </dependency>
    View Code

    SwaggerConfig.java

    package com.qmorn.appapi.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.spi.DocumentationType;
    import springfox.documentation.spring.web.plugins.Docket;
    
    @Configuration
    public class SwaggerConfig {
        @Bean
        public Docket api() {
            return new Docket(DocumentationType.SWAGGER_2)
                    .select()
                    .apis(RequestHandlerSelectors.basePackage("com.qmorn.appapi.user"))
                    .paths(PathSelectors.any())
                    //.apis(RequestHandlerSelectors.any())
                    //.paths(Predicates.not(PathSelectors.regex("/error.*")))
                    .build()
                    .apiInfo(apiInfo());
        }
    
        private ApiInfo apiInfo() {
            return new ApiInfoBuilder()
                    .title("对外开放接口API 文档")
                    //.description("HTTP对外开放接口")
                    .version("1.0.0")
                    //.termsOfServiceUrl("http://xxx.xxx.com")
                    //.license("LICENSE")
                    //.licenseUrl("http://xxx.xxx.com")
                    .build();
        }
    }
    View Code

    SwaggerDemo.java

    package com.qmorn.appapi.user;
    
    import org.springframework.web.bind.annotation.PathVariable;
    import org.springframework.web.bind.annotation.RequestBody;
    import org.springframework.web.bind.annotation.RequestHeader;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import io.swagger.annotations.ApiImplicitParam;
    import io.swagger.annotations.ApiImplicitParams;
    import io.swagger.annotations.ApiOperation;
    import springfox.documentation.annotations.ApiIgnore;
    
    /**
     * 
     * @author YuwenTims
     * @Date 2018-06-14
     */
    
    @RestController
    public class SwaggerDemo {
        
        @ApiOperation(value = "paramType : query", notes = "第一行说明</br>第二行")
        @RequestMapping(value = "/byQuery", method = { RequestMethod.POST })
        public String byQuery(@RequestParam Integer id) {
            return "id = " + id;
        }
        
        @ApiOperation(value = "paramType : path")
        @RequestMapping(value = "/byPath/{id}", method = { RequestMethod.POST })
        public String byPath(@PathVariable(name = "id") Long id) {
            return "id = " + id;
        }
        
        @ApiOperation(value = "paramType : header")
        @ApiImplicitParams({ @ApiImplicitParam(paramType = "header", dataType = "String", name = "id", value = "参数", required = true) })
        @RequestMapping(value = "/byHeader", method = { RequestMethod.POST })
        public String byHeader(@RequestHeader ("id") String id) {
            return "user id = " + id;
        }
        
        @ApiOperation(value = "paramType : form")
        @ApiImplicitParams({ @ApiImplicitParam(paramType = "form", dataType = "Long", name = "id", value = "参数", required = true) })
        @RequestMapping(value = "/byForm", method = { RequestMethod.POST })
        public String byForm(@RequestParam(value="id",defaultValue="0") Long id) {
            return "user id = " + id;
        }
        
        @ApiOperation(value = "paramType : body")
        @ApiImplicitParams({ @ApiImplicitParam(paramType = "body", dataType = "String", name = "id", value = "参数", required = true) })
        @RequestMapping(value = "/queryByBody", method = { RequestMethod.POST })
        public String queryByBody(@RequestBody String id) {
            return "user id = " + id;
        }
        
        @ApiIgnore//忽略此接口说明(在swagger-ui文档中不显示)
        @RequestMapping(value = "/ignore", method = { RequestMethod.POST })
        public String ignore(@RequestParam Long id) {
            return "user id = " + id;
        }
    }
    View Code

      

  • 相关阅读:
    VIM中去除Windows文本中的^M符号,多种方法
    LAMP=LINUX+Apache+MySQL+PHP
    个人常用的VIM命令列表
    vim与windows/linux之间的复制粘贴小结
    eclipse中安装vim插件
    关闭VIM/VI自动备份
    linux一些个非官方网站
    程序员的编辑器
    linux和windows双系统互拷文件乱码问题
    Linux ubuntu lamp安装配置环境phpmyadmin
  • 原文地址:https://www.cnblogs.com/yuwentims/p/9185559.html
Copyright © 2011-2022 走看看