Gre*_*reg 2 java rest swagger-ui spring-boot springfox
我正在尝试在我的 Spring Boot 项目中生成 Swagger UI。JSON API 文档已生成,但 Swagger UI 没有生成,至少当我输入 swagger ui 地址时得到 404。我的依赖项:
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>3.0.0</version>
</dependency>
Run Code Online (Sandbox Code Playgroud)
但是,当我删除此配置(并且不执行其他操作)时:
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
Run Code Online (Sandbox Code Playgroud)
Swagger UI 可以工作。Swagger UI 转换器有问题吗?有解决该问题的方法吗?
需要添加@EnableWebMvc注解
@EnableWebMvc
@Configuration
public class WebConfig extends WebMvcConfigurationSupport {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
Run Code Online (Sandbox Code Playgroud)
但我认为现在配置WebMvc的官方方法是实现WebMvcConfigurer。你可以在官方文档中看到几个例子。我认为如果你使用Spring Boot,它不需要@EnableWebMvc。
@Configuration
public class WebConfig implements WebMvcConfigurer {
@Override
protected void addFormatters(FormatterRegistry registry) {
registry.addConverter(new SomeEnumConverter());
registry.addConverter(new AnotherEnumConverter());
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1217 次 |
| 最近记录: |