Spring Boot2配置Swagger2生成API接口文档详情

2023-05-16 0 3,193

目录

一、Swagger2介绍

前后端分离开发模式中,api文档是最好的沟通方式。

Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。

  • 及时性(接口变更后,能够及时准确地通知相关前后端开发人员)
  • 规范性(并且保证接口的规范性,如接口的地址,请求方式,参数及响应格式和错误信息)
  • 一致性(接口信息一致,不会出现因开发人员拿到的文档版本不一致,而出现分歧)
  • 可测性(直接在接口文档上进行测试,以方便理解业务)

二、配置Swagger2

1、引入相关依赖

<!--swagger-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.7.0</version>
</dependency>
<!--swagger ui-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.7.0</version>
</dependency>

2、创建swagger的配置类

@Configuration
@EnableSwagger2
public class SwaggerConfig {

@Bean
public Docket webApiConfig(){
return new Docket(DocumentationType.SWAGGER_2)
.groupName(\"webApi\")
.apiInfo(webApiInfo())
.select()
.paths(Predicates.not(PathSelectors.regex(\"/admin/.*\")))
.paths(Predicates.not(PathSelectors.regex(\"/error.*\")))
.build();

}

private ApiInfo webApiInfo(){
return new ApiInfoBuilder()
.title(\"XX平台API文档\")
.description(\"本文档描述了xxx接口定义\")
.version(\"1.0\")
// 创建人
.contact(new Contact(\"Jade\", \"http://jade.com\", \"55317362@qq.com\"))
.build();
}
}

3、在启动类上添加注解扫描swagger的配置类,进行测试

要能扫描到swagger的配置类SwaggerConfig

@SpringBootApplication
// 要能扫描到swagger的配置类SwaggerConfig
@ComponentScan(basePackages = {\"com.jade\"})
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}

4、API模型

可以添加一些自定义设置,例如:

定义样例数据

@ApiModelProperty(value = \"创建时间\", example = \"2019-01-01 8:00:00\")
@TableField(fill = FieldFill.INSERT)
private Date gmtCreate;

@ApiModelProperty(value = \"更新时间\", example = \"2019-01-01 8:00:00\")
@TableField(fill = FieldFill.INSERT_UPDATE)
private Date gmtModified;

Spring Boot2配置Swagger2生成API接口文档详情

5、定义接口说明和参数说明

  • 定义在类上:@Api
  • 定义在方法上:@ApiOperation
  • 定义在参数上:@ApiParam
@Api(description=\"讲师管理\")
@RestController
@RequestMapping(\"/admin/edu/teacher\")
public class TeacherAdminController {

@Autowired
private TeacherService teacherService;

@ApiOperation(value = \"所有讲师列表\")
@GetMapping
public List<Teacher> list(){
return teacherService.list(null);
}

@ApiOperation(value = \"根据ID删除讲师\")
@DeleteMapping(\"{id}\")
public boolean removeById(
@ApiParam(name = \"id\", value = \"讲师ID\", required = true)
@PathVariable String id){
return teacherService.removeById(id);
}
}

6、测试,查看效果

访问http://localhost:8080/swagger-ui.html 即可

Spring Boot2配置Swagger2生成API接口文档详情

资源下载此资源下载价格为1小猪币,终身VIP免费,请先
由于本站资源来源于互联网,以研究交流为目的,所有仅供大家参考、学习,不存在任何商业目的与商业用途,如资源存在BUG以及其他任何问题,请自行解决,本站不提供技术服务! 由于资源为虚拟可复制性,下载后不予退积分和退款,谢谢您的支持!如遇到失效或错误的下载链接请联系客服QQ:442469558

:本文采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可, 转载请附上原文出处链接。
1、本站提供的源码不保证资源的完整性以及安全性,不附带任何技术服务!
2、本站提供的模板、软件工具等其他资源,均不包含技术服务,请大家谅解!
3、本站提供的资源仅供下载者参考学习,请勿用于任何商业用途,请24小时内删除!
4、如需商用,请购买正版,由于未及时购买正版发生的侵权行为,与本站无关。
5、本站部分资源存放于百度网盘或其他网盘中,请提前注册好百度网盘账号,下载安装百度网盘客户端或其他网盘客户端进行下载;
6、本站部分资源文件是经压缩后的,请下载后安装解压软件,推荐使用WinRAR和7-Zip解压软件。
7、如果本站提供的资源侵犯到了您的权益,请邮件联系: 442469558@qq.com 进行处理!

猪小侠源码-最新源码下载平台 Java教程 Spring Boot2配置Swagger2生成API接口文档详情 http://www.20zxx.cn/705469/xuexijiaocheng/javajc.html

猪小侠源码,优质资源分享网

常见问题
  • 本站所有资源版权均属于原作者所有,均只能用于参考学习,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,建议提前注册好百度网盘账号,使用百度网盘客户端下载
查看详情

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务