文档章节

springfox、swagger ui 使用总结

追忆100
 追忆100
发布于 2017/03/30 16:10
字数 249
阅读 802
收藏 2
  • pom引用

<!-- swagger-->

<dependency>

<groupId>com.fasterxml.jackson.core</groupId>

<artifactId>jackson-databind</artifactId>

<version>2.6.6</version>

</dependency>

<dependency>

<groupId>io.springfox</groupId>

<artifactId>springfox-swagger2</artifactId>

<version>2.6.1</version>

</dependency>
  • 将swagger解压到webapp下,从github下载也可以 https://github.com/swagger-api/swagger-ui
  • spring servlet拦截 增加
<servlet-mapping>

<servlet-name>spring-servlet</servlet-name>

<url-pattern>/v2/api-docs</url-pattern>

</servlet-mapping>
  • 修改swagger的index.html的

    url = "/nbgl2-balance-web/v2/api-docs";

    格式为${projectName}/v2/api-docs

  • 增加swaggerconfig java类

/**
 * Created by mayue on 2017/2/28.
 * swagger配置
 */
@Configuration
@EnableSwagger2
@EnableWebMvc
@ComponentScan(basePackages = {"cn.com.servyou.yypt.balance.controller"})
public class SwaggerConfig {

    @Bean
    public Docket customDocket() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo()).pathMapping("/api/")
                .securitySchemes(this.apiKey())
                .securityContexts(new ArrayList(securityContext()));
    }

    private ApiInfo apiInfo() {
        Contact contact = new Contact("mayue", "", "xxx@.com");
        return new ApiInfo("xxxx",//大标题 title
                "xxxxx相关接口",//小标题
                "0.0.1",//版本
                "",//termsOfServiceUrl
                contact,//作者
                "",//链接显示文字
                ""//网站链接
        );
    }

    private List<ApiKey> apiKey() {
        List<ApiKey> apiKeyList = Lists.newArrayList();
        apiKeyList.add(new ApiKey("sispsid", "xxxxxxx", "header"));
        return apiKeyList;
    }


    private List<SecurityContext> securityContext() {
        List<SecurityContext> list = Lists.newArrayList();
        list.add(SecurityContext.builder().securityReferences(defaultAuth())
                .forPaths(PathSelectors.regex("/api/*")).build());
        return list;
    }

    List<SecurityReference> defaultAuth() {
        AuthorizationScope authorizationScope = new AuthorizationScope(
                "global", "accessEverything");
        AuthorizationScope[] authorizationScopes = new AuthorizationScope[1];
        authorizationScopes[0] = authorizationScope;
        List<SecurityReference> list = Lists.newArrayList();
        list.add(new SecurityReference(COOKIE_SISP, authorizationScopes));
        return list;
    }

}
  • spring扫描上面的java类
<bean class="xxxx.SwaggerConfig" />

 

 

© 著作权归作者所有

下一篇: guava使用
追忆100
粉丝 2
博文 9
码字总数 3297
作品 0
杭州
后端工程师
私信 提问
加载中

评论(2)

追忆100
追忆100 博主

引用来自“曹赫洋”的评论

COOKIE_SISP 是什么?楼主
常量类中定义的一个常量,static import 进来的
曹赫洋
COOKIE_SISP 是什么?楼主
swagger + spring mvc 实现rest 接口代码与api 同步维护,更新

概述 swagger 是一个规范和完整的框架,是用来生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密...

巡山
2016/06/06
466
0
Springfox与SpringMvc集成实现接口文档化

准备环境 一个web服务器(我使用的是tomcat、当然nginx都可以) eclipse开发环境使用SpringMvc框架的源码(我使用springfox官网提供的demo) 下载swagger-ui源码 实现目的 eclipse中启动后台项目...

zzuqiang
2016/11/24
323
0
springmvc轻松整合springfox

springfox介绍 Springfox的前身是swagger-springmvc,是一个开源的API doc框架,可以将我们的Controller的方法以文档的形式展现。 1.引入springfox依赖jar包 2.自定义swagger SwaggerConfig.j...

1135831485
2016/12/27
215
0
使用springfox 集成swagger 与spring mvc

创建一个maven 模块 将springfox相关的配置都配置在一个单独的api模块中,可以把这个模块当成web应用跑起来。 在需要引入swagger注解的模块中引入相应的依赖。 在api模块中添加初始化swagger...

java9
2016/07/29
1K
0
Spring Boot集成Swagger简易教程

Swagger   Swagger号称是史上最流行的、最好用的API接口文档构建工具,它支持多种语言包括Java在内,本文仅关注如何使用Spring Boot来集成Swagger,更多关于Swagger的介绍可以查看以下几个...

mario阿东
2018/06/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

关于AsyncTask的onPostExcute方法是否会在Activity重建过程中调用的问题

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/XG1057415595/article/details/86774575 假设下面一种情况...

shzwork
今天
6
0
object 类中有哪些方法?

getClass(): 获取运行时类的对象 equals():判断其他对象是否与此对象相等 hashcode():返回该对象的哈希码值 toString():返回该对象的字符串表示 clone(): 创建并返此对象的一个副本 wait...

happywe
今天
6
0
Docker容器实战(七) - 容器中进程视野下的文件系统

前两文中,讲了Linux容器最基础的两种技术 Namespace 作用是“隔离”,它让应用进程只能看到该Namespace内的“世界” Cgroups 作用是“限制”,它给这个“世界”围上了一圈看不见的墙 这么一...

JavaEdge
今天
8
0
文件访问和共享的方法介绍

在上一篇文章中,你了解到文件有三个不同的权限集。拥有该文件的用户有一个集合,拥有该文件的组的成员有一个集合,然后最终一个集合适用于其他所有人。在长列表(ls -l)中这些权限使用符号...

老孟的Linux私房菜
今天
7
0
面试套路题目

作者:抱紧超越小姐姐 链接:https://www.nowcoder.com/discuss/309292?type=3 来源:牛客网 面试时候的潜台词 抱紧超越小姐姐 编辑于 2019-10-15 16:14:56APP内打开赞 3 | 收藏 4 | 回复24 ...

MtrS
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部