SpringBoot-集成Swagger

springfox-swagger2

io.springfox

springfox-swagger2

2.9.2

springfox-swagger-ui

io.springfox

springfox-swagger-ui

2.9.2

3.编写Controller测试是否能正常运行

@RestController

public class MyController {

@RequestMapping(“/test”)

public String test(){

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 {

### 如何在 Spring Boot集成 Swagger #### 添加依赖项 为了使 Spring Boot 项目能够支持 Swagger,需向项目的 `pom.xml` 文件中添加相应的 Maven 依赖。对于 Spring Boot 版本 3.x 及更高版本而言,推荐使用 `springdoc-openapi-starter-webmvc-ui` 来替代旧版的 swagger 相关库。 ```xml <dependency> <groupId>org.springdoc</groupId> <artifactId>springdoc-openapi-starter-webmvc-ui</artifactId> <version>2.0.2</version><!-- 确认此版本兼容当前使用的Spring Boot版本 --> </dependency> ``` #### 配置应用属性文件 通常情况下,默认设置已经足够让 Swagger 正常工作;然而如果想要自定义路径或者其他行为,则可以在 application.properties 或者 application.yml 文件里加入特定参数: ```properties # application.properties 示例 springdoc.api-docs.path=/v3/api-docs springdoc.swagger-ui.path=/swagger-ui.html ``` #### 启动并验证 完成上述操作之后重新编译运行程序,在浏览器地址栏输入如下链接即可打开 Swagger UI 页面浏览 API 文档[^1]。 http://localhost:8080/swagger-ui/index.html #### 更复杂的场景处理 当遇到更加复杂的应用需求时——比如安全机制设定或是多个 API 组管理等方面的要求,应当查阅 springdoc-openapi 官方指南获取更多指导信息以便做出适当调整[^3]。 ```java // Java代码片段用于展示如何通过@Bean注解注册组件 import org.springframework.context.annotation.Bean; ... @Bean public OpenAPI customOpenAPI(){ return new OpenAPI() .info(new Info().title("Sample Application API").description("This is a sample Spring Boot RESTful service using springdoc-openapi and OpenAPI 3.").version("v0.0.1")); } ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值