目录
- 【手摸手教学】创建SpringBoot项目完成简单的接口访问
- 【手摸手教学】SpringBoot集成lombok
- 【手摸手教学】从零开始,轻松设计学生信息管理系统表结构
- 【手摸手教学】拯救开发烦恼,SpringBoot集成Swagger,快速生成API文档
- 【手摸手教学】SpringBoo集成shiro+redis,实现JWT鉴权–(未完成)
- 【手摸手教学】实现用户角色管理–(未完成)
- 【手摸手教学】老师信息管理–(未完成)
- 【手摸手教学】学生信息管理–(未完成)
代码
代码下载地址:https://download.csdn.net/download/qq_20067575/87458251
前言
在软件开发过程中,前后端对接是一个常见的问题。传统的方式是手动编写API文档或使用Postman等工具,这些工作往往需要耗费大量的时间和精力。然而,Swagger可以帮助我们轻松生成API文档,避免了繁琐的手动工作,让我们有更多的时间和精力专注于应用程序的开发和优化,提高开发效率和代码质量。因此,使用Swagger可以极大地提高开发效率和开发质量,同时降低了开发过程中的人为错误率。
操作
- 在pom.xml中添加Swagger依赖:
<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>2.0.9</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.10.5</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.10.5</version>
<exclusions>
<exclusion>
<groupId>io.swagger</groupId>
<artifactId>swagger-models</artifactId>
</exclusion>
</exclusions>
</dependency>
- 创建一个Swagger配置类
@Configuration
@EnableSwagger2WebMvc
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.basePackage("com.example.student"))
.paths(PathSelectors.any())
.build()
.apiInfo(apiInfo());
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Student API Documentation")
.version("1.0")
.build();
}
@Bean
public UiConfiguration uiConfiguration(){
UiConfigurationBuilder uiConfigurationBuilder = UiConfigurationBuilder.builder();
uiConfigurationBuilder.operationsSorter(OperationsSorter.METHOD);
uiConfigurationBuilder.tagsSorter(TagsSorter.ALPHA);
uiConfigurationBuilder.filter(true);
uiConfigurationBuilder.displayRequestDuration(true);
return uiConfigurationBuilder.build();
}
}
这个配置类使用了@EnableSwagger2注解来启用Swagger,并且定义了一个Docket bean,用于配置Swagger。
-
运行Spring Boot应用程序并访问Swagger UI,可以在浏览器中输入 http://localhost:8080/swagger-ui.html 访问API文档页面。
-
注意:上述示例代码中的
com.example.student应该替换为你自己的应用程序的基本包名,以便Swagger能够扫描到你的API控制器。
在启动类上面添加 @EnableScheduling
swagger 的优缺点
优点:
- 提高API文档规范化:Swagger可以根据OpenAPI规范自动生成API文档,方便API使用者理解和调用API接口。
- 提高API使用效率:Swagger提供了一个交互式的API控制台,API使用者可以在该控制台上直接测试API接口,提高了API的使用效率。
- 提高API的可维护性:Swagger可以根据OpenAPI规范自动生成API文档和样例,减少了文档维护的工作量,提高了API的可维护性。
- 方便API版本控制:Swagger支持多个API版本的文档管理,开发人员可以通过API版本控制机制,轻松管理不同版本的API文档和样例。
- 提高API的可靠性:Swagger自动生成API的请求和响应样例,开发人员可以根据这些样例进行自动化测试,提高了API的测试覆盖率,减少了API出错的概率。
缺点:
- 学习成本较高:Swagger需要熟悉OpenAPI规范和Swagger的使用方法,需要一定的学习成本。
- 生成的文档可能过于繁琐:Swagger自动生成的API文档可能过于繁琐,需要开发人员进行优化和简化。
- 对于一些复杂的API接口,Swagger的自动生成可能存在一定的限制,需要手动编写API文档。
总结
我们完成了swagger的集成后,剩下的就可以开始集成shiro并开发授权接口 完成登录功能!!