chen888的gravatar头像
chen888 2017-09-07 17:44:44

spring boot + swagger2集成api接口文档

Swagger是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。Swagger 让部署管理和使用功能强大的API从未如此简单。

pox.xml文件配置:

<!--swagger2 start-->
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger2</artifactId>
    <version>2.4.0</version>
</dependency>
<dependency>
    <groupId>io.springfox</groupId>
    <artifactId>springfox-swagger-ui</artifactId>
    <version>2.4.0</version>
</dependency>
<!--swagger2 end-->

spring boot 配置:

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.3.1.RELEASE</version>
    </parent>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

maven项目结构:

spring boot + swagger2集成api接口文档

在代码的控制类中加入相关的注解

spring boot + swagger2集成api接口文档

说明: 
其中@ApiOperation和@ApiParam为添加的API相关注解,各参数说明如下: 
@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response = “接口返回参数类型”, notes = “接口发布说明”);其他参数可参考源码; 
@ApiParam(required = “是否必须参数”, name = “参数名称”, value = “参数具体描述”)

 

最常用的5个注解

@Api:修饰整个类,描述Controller的作用
@ApiOperation:描述一个类的一个方法,或者说一个接口
@ApiParam:单个参数描述
@ApiModel:用对象来接收参数
@ApiProperty:用对象接收参数时,描述对象的一个字段

 

其它若干

@ApiResponse:HTTP响应其中1个描述
@ApiResponses:HTTP响应整体描述
@ApiIgnore:使用该注解忽略这个API 

@ApiClass
@ApiError
@ApiErrors

@ApiParamImplicit
@ApiParamsImplicit

 

效果图:

spring boot + swagger2集成api接口文档spring boot + swagger2集成api接口文档

 

swagger2 比 swagger 不用手动添加swagger的页面


打赏

已有3人打赏

最代码客服的gravatar头像 已注销用户的gravatar头像 最代码官方的gravatar头像

文件名:Swagger.zip,文件大小:15.587K 下载
最代码最近下载分享源代码列表最近下载
329512801  LV28 2022年2月22日
heqian  LV16 2021年8月2日
林志勇  LV10 2021年3月9日
Charlie89  LV3 2021年2月27日
xhmpmail  LV17 2021年2月24日
zhujunnan  LV12 2020年7月24日
lilanzhou  LV8 2019年6月14日
瓜不皮  LV15 2019年6月4日
caohanren  LV11 2019年1月24日
1943374299  LV2 2018年7月21日
最代码最近浏览分享源代码列表最近浏览
lipanlong  LV10 2023年7月6日
annazhang  LV29 2022年10月27日
1234mama  LV19 2022年3月22日
刘亦菲9527  LV15 2021年11月30日
huaua7676  LV30 2021年11月13日
zhuiyunyiye  LV12 2021年10月26日
hyz419  LV6 2021年9月19日
ethen6  LV2 2021年7月28日
329512801  LV28 2021年6月23日
zhoujunyu  LV14 2021年4月1日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友