博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
springmvc+swagger2
阅读量:5772 次
发布时间:2019-06-18

本文共 3055 字,大约阅读时间需要 10 分钟。

一、swagger2依赖

io.springfox
springfox-swagger2
spring-aop
org.springframework
jackson-annotations
com.fasterxml.jackson.core
io.springfox
springfox-swagger-ui

二、springmvc配置文件加入

三、web.xml配置

swagger-ui.html

四、swagger2配置

  可创建多个Docket,对restful api进行分组管理

import io.swagger.annotations.Api;import io.swagger.annotations.ApiOperation;import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.web.servlet.config.annotation.EnableWebMvc;import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;import springfox.documentation.builders.ApiInfoBuilder;import springfox.documentation.builders.PathSelectors;import springfox.documentation.builders.RequestHandlerSelectors;import springfox.documentation.service.ApiInfo;import springfox.documentation.service.Contact;import springfox.documentation.spi.DocumentationType;import springfox.documentation.spring.web.plugins.Docket;import springfox.documentation.swagger2.annotations.EnableSwagger2;@EnableWebMvc@EnableSwagger2@Configurationpublic class Swagger2Config extends WebMvcConfigurationSupport {    @Bean    public Docket docket() {        return new Docket(DocumentationType.SWAGGER_2)                .apiInfo(apiInfo())                .groupName("admin")                .select()                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))                .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))                .paths(PathSelectors.ant("/**"))                .build();    }//    @Bean//    public Docket xxx() {//        return new Docket(DocumentationType.SWAGGER_2)//                .apiInfo(apiInfo())//                .groupName("xxx")//                .select()//                .apis(RequestHandlerSelectors.withClassAnnotation(Api.class))//                .apis(RequestHandlerSelectors.withMethodAnnotation(ApiOperation.class))//                .paths(PathSelectors.ant("/xxx/**"))//                .build();//    }    private ApiInfo apiInfo() {        return new ApiInfoBuilder()                .title("shiro 无状态组件")                .contact(new Contact("胡俊哲个", "", "2570230521@qq.com"))                .version("1.0")                .build();    }}

五、效果演示

Restful API 访问路径:   * http://IP:port/{context-path}/swagger-ui.html

六、注意事项

  1、如果有拦截器或者过滤器 对项目根路径进行拦截,可能<welcome-file>的配置不生效!

  2、如果 配置 <welcome-file>swagger-ui.html</welcome-file>,访问 http://IP:port/{context-path}/,虽然可以看到页面,但是接口内容显示不出来。原因如下:

  

  这个js在匹配url的时候 要包含“swagger-ui.html”,所以就出错了。解决方案如下:

  (1)修改web.xml

index.html

  (2)新建index.html

    
首页

七、swagger2常用注解参考

  

转载地址:http://ssoux.baihongyu.com/

你可能感兴趣的文章
nginx中配置文件的讲解
查看>>
MindNode使用
查看>>
SQL Server 2016 Alwayson新增功能
查看>>
HTTP库Axios
查看>>
CentOS7下安装python-pip
查看>>
认知计算 Cognitive Computing
查看>>
左手坐标系和右手坐标系 ZZ
查看>>
陀螺仪主要性能指标
查看>>
Java 架构师眼中的 HTTP 协议
查看>>
Linux 目录结构和常用命令
查看>>
Linux内存管理之mmap详解 (可用于android底层内存调试)
查看>>
利润表(年末)未分配利润公式备份
查看>>
Android开发中ViewStub的应用方法
查看>>
gen already exists but is not a source folder. Convert to a source folder or rename it 的解决办法...
查看>>
HDOJ-2069Coin Change(母函数加强)
查看>>
遍历Map的四种方法
查看>>
Altium Designer 小记
查看>>
【Linux高级驱动】I2C驱动框架分析
查看>>
赵雅智:js知识点汇总
查看>>
二维有序数组查找数字
查看>>