1、背景
目前大部分微服务都采用前后端分离的形式进行开发。这样做的好处在于工作细分,但是对开发后端的开发人员来说,和前端对接的时候,接口文档的撰写可谓是件非常头疼的事情了。Sping当然也考虑到这件事,所以swagger就出来了。下面可以看整合swagger是具体步骤。
2、步骤
第一点、jar包导入。这当然是必不可少的。
<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配置类
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket allApi() {
return new Docket(DocumentationType.SWAGGER_2)
.enable(true)
.select()
.apis(RequestHandlerSelectors.basePackage("com.demo"))
.build();
}
}
这里也就相当于指定一下扫描什么包下面。
第三步、在controller类里面写上swagger的相应注解描述即可,比如:
@ApiOperation(value="这是一个API接口",notes="描述一下接口内容")
当然swagger还有很多其他的注解,可以去官方网址查询对应的写法、。https://swagger.io/
如果按照上面步骤集成完毕了,可以在地址栏输入地址:
http://ip地址:项目端口/项目名/swagger-ui.html
就可以访问了,如图出现这样的:
说明就正确了。
3、总结
其实目前来说,java生态圈非常的完善了,许多比较复杂的东西,都可以在开源社区找到相应的解决方案。不过我对swagger做了一些自己的初步判断,如果项目中要求性能比较高的项目,我觉得还是老老实实写文档吧,因为swagger需要使用到大量的注解,而注解其实是通过反射的形式实现的,相当于一种糖语法而已。所以对性能还是会造成一定的影响。