SpringBoot Swagger框架
- 2020 年 1 月 1 日
- 筆記
本文标识 : Jsbt0004
本文编辑 : Jack 风
编程工具 : IDEA
阅读时长 : 6分钟
::: tip Swagger
描述和测试 API 接口,自动生成 API 接口文档。
:::
为了方便上面的 API 接口调试,我们可以使用:
- Postman:模拟 POST 请求
- Swagger:描述和测试 API 接口
1、添加依赖
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version> </dependency>
2、Swagger 配置
yml 配置文件
swagger: title: SpringBoot学习 description: SpringBoot快速入门 version: 1.0.0 name: JackFeng url: http://a2data.cn email: [email protected]
Swagger 配置文件
/** * @author: jack[QQ:66860619] * @create: 2019-11-20 * @description: */ @ConfigurationProperties(prefix = "swagger") @Configuration //必须存在 @EnableSwagger2 //必须存在 @EnableWebMvc //必须存在 @Data //lomlok //必须存在 扫描的API Controller包 @ComponentScan(basePackages = {"com.jack.demo.controller"}) public class SwaggerConfig{ private String title; private String description; private String version; private String name; private String url; private String email; @Bean public Docket customDocket() { return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()); } private ApiInfo apiInfo() { Contact contact = new Contact(name, url, email); return new ApiInfoBuilder() .title(title) .description(description) .contact(contact) .version(version) .build(); } }
配置文件中的值到配置类中的注入,在第八章 springboot-08-配置文件的注入中有介绍
MVC 配置
作用:过滤网页静态资源
@Configuration class WebMvcConfig implements WebMvcConfigurer { public void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("swagger-ui.html") .addResourceLocations("classpath:/META-INF/resources/"); registry.addResourceHandler("/webjars/**") .addResourceLocations("classpath:/META-INF/resources/webjars/"); } }
3、使用注解
在控制器 API 上添加接口描述的注解
@RestController @Api(value = "用户模块") public class HelloController { @GetMapping("/hello") @ApiOperation(value = "测试Swagger") public String hello(){ return "hello SpringBoot-swagger"; } }
4、Webjars 的使用
官网:https://www.webjars.org/
<dependency> <groupId>org.webjars</groupId> <artifactId>jquery</artifactId> <version>3.3.1-1</version> </dependency>
通过 jar 包的方式引入了 jQuery
再浏览器中可以通过如下地址访问到
http://localhost:8080/webjars/jquery/3.3.1-1/jquery.js
地址说明:/webjars/jquery/3.3.1-1/jquery.js
对应上面的 webjars/ artifactId/version/文件名
可以到项目中的 jar 包中具体查看。