springbootJava学习笔记编程it互联网

SpringBoot 使用(二): 集成Swagger

2015-12-15  本文已影响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/ 研究.

上一篇下一篇

猜你喜欢

热点阅读