Swagger接口的文档在线自动生成
使用Swagger你只需要按照它的规范去定义接口及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。
Knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案。
1. 导入 knife4j 的maven坐标
在pom.xml中添加依赖
- <dependency>
- <groupId>com.github.xiaoymin</groupId>
- <artifactId>knife4j-spring-boot-starter</artifactId>
- </dependency>
复制代码 完整带版本:
- <dependency>
- <groupId>com.github.xiaoymin</groupId>
- <artifactId>knife4j-spring-boot-starter</artifactId>
- <version>3.0.2</version>
- </dependency>
复制代码
2. 在配置类中加入 knife4j 相关配置
WebMvcConfiguration.java
- /**
- * 通过knife4j生成接口文档
- * @return
- */
- @Bean
- public Docket docket() {
- ApiInfo apiInfo = new ApiInfoBuilder()
- .title("苍穹外卖项目接口文档")
- .version("2.0")
- .description("苍穹外卖项目接口文档")
- .build();
- Docket docket = new Docket(DocumentationType.SWAGGER_2)
- .apiInfo(apiInfo)
- .select()
- .apis(RequestHandlerSelectors.basePackage("com.sky.controller"))
- .paths(PathSelectors.any())
- .build();
- return docket;
- }
复制代码
3. 设置静态资源映射,否则接口文档页面无法访问
WebMvcConfiguration.java
- /**
- * 设置静态资源映射
- * @param registry
- */
- protected void addResourceHandlers(ResourceHandlerRegistry registry) {
- registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
- registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
- }
复制代码
4. 访问测试
接口文档访问路径为 http://ip:port/doc.html ---> http://localhost:8080/doc.html
### 5.3 常用注解
通过注解可以控制生成的接口文档,使接口文档拥有更好的可读性,常用注解如下:
| **注解** | **说明** |
| ----------------- | ---------------------------------------- |
| @Api | 用在类上,例如Controller,表示对类的说明 |
| @ApiModel | 用在类上,例如entity、DTO、VO |
| @ApiModelProperty | 用在属性上,描述属性信息 |
| @ApiOperation | 用在方法上,例如Controller的方法,说明方法的用途、作用 |
WebMvcConfiguration.zip
(1.08 KB, 下载次数: 0, 价格: 1 金钱)
jdk17完整项目参考:
sky-take-out.zip
(72.67 KB, 下载次数: 0, 价格: 10 金钱)
|