Springfox @RestController命名

Bar*_*rge 11 swagger spring-boot springfox

我使用Springfox遇到了一些小麻烦.我无法为@RestController类设置名称.

我正在使用Spring启动和Swagger2.

以下代码将在springfox ui中生成一个名为"rest-status-controller"的控制器.我期待一个"应用程序状态".还有其他配置我不知道吗?

@Api("Application Status")
@RestController
@RequestMapping("/rest/status")
public class RestStatusController {

    @ApiOperation(value="Get components current status")
    @RequestMapping(method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
    public String global() {
    //...
    }

    @ApiOperation(value="Get mysql current status")
    @RequestMapping(value="/mysql" method = RequestMethod.GET, produces=MediaType.APPLICATION_JSON)
    public String mysql() {
    //...
    }
}
Run Code Online (Sandbox Code Playgroud)

小智 25

尝试使用Annotation 的tags参数@Api来更改RestController方法的分组名称.摘自相应的Java Doc(缩写):

/**
 * A list of tags for API documentation control.
 * Tags can be used for logical grouping of operations by resources or any other qualifier.
 */
String[] tags() default "";
Run Code Online (Sandbox Code Playgroud)

在您的情况下,只需使用:

@Api(tags = "Application Status")
@RestController
@RequestMapping("/rest/status")
public class RestStatusController {
    ...
}
Run Code Online (Sandbox Code Playgroud)

这应该RestStatusController使用标签"Application Status"对所有记录的操作进行分组.


Nar*_*dra 9

Use both tags and description to avoid controller name API grouping. For example:

@Api(
  tags="Application Status.",
  description = "Provides Application Status API's.
")
Run Code Online (Sandbox Code Playgroud)


Aks*_*hay 6

@Tags(name = "name", description = "description") 根据 OpenApi v3


Mel*_*lih 5

对于 OpenApi v3:

@Tag(name = "name")
Run Code Online (Sandbox Code Playgroud)