1.什么是swagger
是一个类库,可以为SpringMVC框架项目中的java类自动生成在线的接口文档。使用户通过访问http://主机:端口/上下文路径/swagger-ui.html就可以查看对外开放的接口方法的注释、参数说明、返回值,并在线进行测试调用。
2.为什么用swagger
分布式开发的项目或者大型平台,或任何基于微服务/SOA架构开发的系统,各模块(服务)分别由不同的开发者完成,但是需要相互调用,为了解决接口信息沟通不畅的问题,swagger可以自动生成在线的接口说明文档,供开发者查看、并作为调用的依据。
该类库可以大大提高分布式项目的开发效率。
3.1先是将jar包导进去
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.4.0</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</exclusion>
<exclusion>
<groupId>com.fasterxml</groupId>
<artifactId>classmate</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.4.0</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>19.0</version>
</dependency>
<dependency>
<groupId>org.mapstruct</groupId>
<artifactId>mapstruct-jdk8</artifactId>
<version>1.1.0.Final</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.verson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.verson}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.verson}</version>
</dependency>
3.2 配置文件 springmvc.xml
3.3 swagger配置类 用于描述本模板接口的基本信息
3.4 控制器代码