SpringBoot 使用(二): 集成Swagger

作者: 龙白一梦 | 来源:发表于2015-12-15 16:13 被阅读15124次

    在互联网公司, 微服务的使用者一般分为两种, 客户端和其他后端项目(包括关联微服务),不管是那方对外提供文档 让别人理解接口 都是必不可少的。传统项目中一般使用wiki或者文档, 修改繁琐,调用方不一定及时了解变化。 微服务时代,效率第一,使用Swagger可以在部署的时候生成在线文档,同时UI也特别漂亮清晰,可谓提供api之利器,Swagger 让部署管理和使用功能强大的API从未如此简单。网上Swagger文章不少, 但是少有跟SpringBoot集成,故而来一篇,造福社会.

    1. pom.xml 配置

    <parent>
     <groupId>org.springframework.boot</groupId>
     <artifactId>spring-boot-starter-parent</artifactId>
     <version>1.2.6.RELEASE</version>
     <relativePath/> <!-- lookup parent from repository -->
    </parent>
    
    <properties>
     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
     <java.version>1.7</java.version>
     <springfox.version>2.2.2</springfox.version>
    </properties>
    
    <dependencies>
     <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
    
     <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger2</artifactId>
        <version>${springfox.version}</version>
     </dependency>
     <dependency>
        <groupId>io.springfox</groupId>
        <artifactId>springfox-swagger-ui</artifactId>
        <version>${springfox.version}</version>
     </dependency>
    </dependencies>
    

    2. 创建SwaggerDemoController.java

    @RestController
    @RequestMapping("/user")
    @EnableSwagger2
    public class SwaggerDemoController {
        @RequestMapping(value = "/demo2.do")
        String getDemo() {
            return "Hello World \n" + "Spring boot3";
        }
    
        @Bean
        public Docket swaggerSpringMvcPlugin() {
            ApiInfo apiInfo = new ApiInfo("sample of springboot", "sample of springboot", null, null, null, null, null);
            Docket docket = new Docket(DocumentationType.SWAGGER_2).select().paths(regex("/user/.*")).build()
                .apiInfo(apiInfo).useDefaultResponseMessages(false);
            return docket;
        }
    }
    

    3. 创建DemoApplication.java

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

    4. api查看

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

    2.png

    5. 后记

    swagger 集成也是十分简单, 更多功能可以到 官网http://swagger.io/ 研究.

    相关文章

      网友评论

      • 翟志军:不是很喜歡這種浸入式的寫法。
      • a5b70d8caafb:apidoc 用nodeJs 来生成也是可以 ,就是要写注释
        Mr_panmin:怎么用node.js生成?
      • Dev:请问可否有demo学习一下?非常感谢
        光剑书架上的书:可参考本人的一个示例:https://github.com/EasySpringBoot/h5perf

        文章介绍:
        《Spring Boot极简教程》第14章 Spring Boot集成Swagger2构建自动化Rest API文档:
        http://www.jianshu.com/p/be05aa96fd29

        http://www.jianshu.com/p/8553f315b2c8
        龙白一梦:@Dev 可以github上去搜索下 还是很多的

      本文标题: SpringBoot 使用(二): 集成Swagger

      本文链接:https://www.haomeiwen.com/subject/yvvuhttx.html