spring boot 2.3.7.RELEASE
swagger 2.8.0
在 pom.xml 文件中添加如下 maven 依赖信息:
<!--swagger support-->
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.8.0</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.8.0</version>
</dependency>通过实现 WebMvcConfigurer 接口的 addResourceHandlers(ResourceHandlerRegistry registry) 方法,映射 Swagger 资源。配置如下:
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
/**
* 配置 Swagger
* @author Administrator 2021/4/23 22:23
* @version 1.0
*/
@Configuration
public class WebMvcConfig implements WebMvcConfigurer {
/**
* 发现如果继承了WebMvcConfigurationSupport,则在yml中配置的相关内容会失效。
* 需要重新指定静态资源
* @param registry
*/
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
// 映射 webjars 资源
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");
registry.addResourceHandler("/webjars/**")
.addResourceLocations("classpath:/META-INF/resources/webjars/");
}
}在 Spring Boot 的启动类上面通过 @EnableSwagger2 注解启用 Swagger。代码如下:
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@EnableSwagger2
@SpringBootApplication
public class SpringbootSwaggerDemo1Application {
public static void main(String[] args) {
SpringApplication.run(SpringbootSwaggerDemo1Application.class, args);
}
}运行 Spring Boot 应用,使用浏览器访问 http://localhost:8080/swagger-ui.html ,效果如下图:
