SpringBoot-集成Swagger

本文详细介绍了如何在SpringBoot项目中集成Swagger,包括配置SwaggerConfig、解决版本冲突、配置API信息、自定义扫描接口、配置Swagger开关以及API分组。此外,还涉及实体类注解、接口注解的使用方法,以及测试Swagger的传参操作。最后,提供了全套Java开发学习资料。
摘要由CSDN通过智能技术生成

return “hello”;

}

}

浏览器:

正常运行!

4.使用Swagger,需要编写一个配置类-SwaggerConfig来配置 Swagger

@Configuration //配置类

@EnableSwagger2// 开启Swagger2的自动配置

public class SwaggerConfig {

}

5.测试进入Sawgger页面

重启主程序,访问 localhost:8080/swagger-ui.html

发现启动报错:

原因:是因为我们的SpringBoot版本过高

org.springframework.boot

spring-boot-starter-parent

2.6.2

将其版本降低即可,改为2.5.4

org.springframework.boot

spring-boot-starter-parent

2.5.4

我们重启主程序,访问 localhost:8080/swagger-ui.html

出现以下页面说明访问成功了。

这个界面是Swagger为我们提供的ui界面,我们可以在源码中找到它

四、配置Swagger API信息

=================

(1)Swagger实例Bean是Docket,所以通过配置Docket实例来配置Swaggger。

@Bean //配置docket以配置Swagger具体参数

public Docket docket() {

return new Docket(DocumentationType.SWAGGER_2);

}

(2)通过apiInfo()属性配置文档信息

//配置文档信息

private ApiInfo apiInfo() {

Contact contact = new Contact(“联系人名字”, “http://xxx.xxx.com/联系人访问链接”, “联系人邮箱”);

return new ApiInfo(

“Swagger学习”, // 标题

“学习演示如何配置Swagger”, // 描述

“v1.0”, // 版本

“http://terms.service.url/组织链接”, // 组织链接

contact, // 联系人信息

“Apach 2.0 许可”, // 许可

“许可链接”, // 许可连接

new ArrayList<>()// 扩展

);

}

(3)Docket 实例关联上 apiInfo()

@Bean //配置docket以配置Swagger具体参数

public Docket docket() {

return new Docket(DocumentationType.SWAGGER_2)

.apiInfo(apiInfo());//配置Swagger信息;

}

重启主程序测试,可以看到Swagger信息已经变更成我们定义的信息

五、配置Swagger自定义扫描接口

==================

5.1 默认状态


我们在这个ui界面中,可以看到扫描了两个controller接口

一个是默认的/error请求,也就是我们启动springboot主程序未加配置默认访问8080端口的默认controller

另一个是我们自己写的/test请求,对应着MyController,由于我们用的@RequsetMapping注解,所以请求的方式有以上的六种

@RestController

public class MyController {

@RequestMapping(“/test”)

public String test(){

return “hello”;

}

}

5.2 配置扫描接口


(1)构建Docket时通过select()方法配置扫描接口。

@Bean

public Docket docket() {

return new Docket(DocumentationType.SWAGGER_2)

.apiInfo(apiInfo())//配置Swagger信息

.select()

/**

  • apis():指定扫描的接口

  • RequestHandlerSelectors:配置要扫描接口的方式

  • basePackage:指定要扫描的包

  • any:扫面全部

  • none:不扫描

  • withClassAnnotation:扫描类上的注解(参数是类上注解的class对象)

  • withMethodAnnotation:扫描方法上的注解(参数是方法上的注解的class对象)

*/

.apis(RequestHandlerSelectors.basePackage(“com.yixin.demo.controller”)

.build();

}

(2) 重启项目测试,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值