20190909 SpringBoot集成Swagger

SpringBoot集成Swagger

1. 引入依赖

// SpringBoot
compile('org.springframework.boot:spring-boot-starter-web')
compile('org.springframework.boot:spring-boot-starter-actuator')

// springfox-swagger
compile('io.springfox:springfox-swagger2:2.9.2')
compile('io.springfox:springfox-swagger-ui:2.9.2')

2. 配置类

2.1. 配置WebMvc

@Configuration
@EnableWebMvc
public class WebMvcConfig {

}

2.2. 配置Swagger

@Configuration
@EnableSwagger2
public class SwaggerConfig implements WebMvcConfigurer {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2).apiInfo(apiInfo()).select().apis(RequestHandlerSelectors.basePackage("test.hwj.swagger"))
                .paths(PathSelectors.any()).build();
    }

    private ApiInfo apiInfo() {
        return new ApiInfoBuilder().title("测算项目").description("测算项目API接口文档").version("1.0").build();
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
    }
}

3. 常用注解

3.1. @Api

用于声明类,属性tags提供说明

3.2. @ApiOperation

用于声明方法,属性value提供说明

3.3. @ApiParam

用于声明参数,属性value提供说明,属性required显示是否为必需项,默认为false

3.3. @ApiImplicitParams和@ApiImplicitParam

用于声明方法,说明方法的参数,与@ApiParam不同之处在于:
1. 将对参数的说明放在方法声明上,集中在一起;
2. @ApiParam只适用于和JAX-RS 1.x/2.x联合使用;

3.4. @ApiModel()

用于声明实体类,属性value提供说明

@ApiModelProperty

用于声明实体类字段,属性value提供说明

posted @   流星<。)#)))≦  阅读(172)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
历史上的今天:
2017-09-09 Java Socket Timeout 总结
点击右上角即可分享
微信分享提示