Swagger--分组 & 接口注释
Posted Z && Y
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Swagger--分组 & 接口注释相关的知识,希望对你有一定的参考价值。
01: Swagger–介绍及SpringBoot集成Swagger
02: Swagger–配置Swagger信息
03: Swagger–配置扫描接口及开关
04: Swagger–分组 & 接口注释
05: Swagger–接口测试&Swagger小结
1. Swagger--分组和接口注释及小结
1.1 配置分组
如果没有配置分组,默认是default。通过groupName()方法即可配置分组:
groupName("group01") // 配置分组
SwaggerConfig.java
/**
* 配置docket以配置Swagger具体参数
*/
@Bean
public Docket docket(Environment environment) {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).groupName("group01").select().apis(RequestHandlerSelectors.basePackage("com.tian.swagger.controller")).build();
}
启动测试:
1.2 配置多个分组?
配置多个分组只需要配置多个docket即可:
SwaggerConfig.java
/**
* 配置docket以配置Swagger具体参数
*/
@Bean
public Docket docket(Environment environment) {
return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).groupName("group01").select().apis(RequestHandlerSelectors.basePackage("com.tian.swagger.controller")).paths(PathSelectors.ant("/tian/**")).build();
}
@Bean
public Docket docket1() {
return new Docket(DocumentationType.SWAGGER_2).groupName("group02");
}
@Bean
public Docket docket2() {
return new Docket(DocumentationType.SWAGGER_2).groupName("group03");
}
@Bean
public Docket docket3() {
return new Docket(DocumentationType.SWAGGER_2).groupName("group04");
}
运行结果:
1.3 实体配置
实体就是Models
1.3.1 新建一个实体类
User.java
package com.tian.swagger.pojo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
/**
* ClassName: User
* Description: Api相关的注释就是Swagger接口文档的注释信息
*
* @author Administrator
* @date 2021/6/6 12:11
*/
@ApiModel("用户实体")
public class User {
@ApiModelProperty("用户名")
private String username;
@ApiModelProperty("密码")
private String password;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
1.3.2 接口返回一个实体对象
HelloController.java
@GetMapping("/user")
public User user() {
return new User();
}
运行结果:
1.3.3 小结
注:并不是因为@ApiModel这个注解让实体显示在这里了,而是只要出现在接口方法的返回
值上的实体都会显示在这里,而@ApiModel和@ApiModelProperty这两个注解只是为实体添
加注释的。
- @ApiModel为类添加注释
- @ApiModelProperty为类属性添加注释
1.4 接口注释
- @ApiOperation 注解在方法上面,用于描述这个接口是干嘛的
- @ApiParam 注解是放在方法的参数前面, 用于描述这个参数
HelloController.java
package com.tian.swagger.controller;
import com.tian.swagger.pojo.User;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* ClassName: HelloController
* Description: 测试项目是否可以正常运行
*
* @author Administrator
* @date 2021/6/5 21:05
*/
@RestController
public class HelloController {
/**
* @ApiOperation 注解在方法上面, 用于描述这个接口是干嘛的
* @ApiParam 注解是放在方法的参数前面, 用于描述这个参数
*/
@ApiOperation("返回用户的信息,并且向用户问好☘")
@GetMapping("/helloUser")
public String hello(@ApiParam(value = "用户名") String userName) {
return "hello" + userName;
}
@GetMapping("/user")
public User user() {
return new User();
}
}
运行测试:
以上是关于Swagger--分组 & 接口注释的主要内容,如果未能解决你的问题,请参考以下文章