相信大家都很熟悉springmvc,在用其进行开发工作的时候,有没有遇到几个小问题?比如:

  1.前后端分离的模式下,前端开发人员如何得知后端的开发进度,有哪些接口可用?

  2.后端开发人员在测试自己的接口时,还要找一些http请求工具来测试。

  3.接口的简要参数说明文档如何生成?

  以上的问题,可能导致了前后端配合的不顺,或者开发的延缓。

  那么swagger ui是什么呢?它是一种在线API在线文档生成,以及提供在线测试,是一款很强大的插件,下面简单介绍下它的使用方法:

  1.在自己的工程中加入SwaggerConfig.java,路径随意,代码如下:

@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket docket() {
return new Docket(DocumentationType.SWAGGER_2)
.apiInfo(apiInfo())
.useDefaultResponseMessages(false);
}
private ApiInfo apiInfo() {
return new ApiInfoBuilder()
.title("Api Documents")
.contact(new Contact("Shildon", "", "shildondu@gmail.com"))
.build();
}
}

  2.在pom.xml配置文件中加入相关jar的依赖配置:

     <dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
<version>2.6.1</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.2.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.2.3</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.2.3</version>
</dependency>

  3.在application配置文件中加入bean的配置:

  <bean class="com.**.**.SwaggerConfig"/>

  4.在application配置文件中加入swagger相关的静态资源访问的配置:

    <mvc:annotation-driven/>
<mvc:resources mapping="swagger-ui.html" location="classpath:/META-INF/resources/"/>
<mvc:resources mapping="/webjars/**" location="classpath:/META-INF/resources/webjars/"/>

  5.相关配置全都结束,写一个测试controller,通过@ApiOperation注解来表名该api的用途

public class HealthStatusController {

    @ApiOperation("健康检查")
@RequestMapping(value="/health/status",method = RequestMethod.GET)
@ResponseBody
public String getServerStatus() {
return "ok";
}
}

  6.通过localhost:8080/swagger-ui.html访问即可到swagger界面,通过Try it out!按钮可以进行在线测试了 

  最后,温馨提示:上面图片的右上角有一个,其实是为了用来获取所有api的信息的内置接口,需要在web.xml中增加配置

    <servlet-mapping>
<servlet-name>servletName</servlet-name>
<url-pattern>/v2/api-docs</url-pattern>
</servlet-mapping>

  这样,就可以通过localhost:8080/v2/api-docs获取api的信息啦,返回的是json,如下:

  

  当然,swagger的功能不仅这么简单,还有很多注解可满足各种功能!!!

SpringMVC融合Swagger UI使用的更多相关文章

  1. SpringMVC+JWT+Swagger UI+RestFul

    前言: 其实很早就想写这篇文章了,因为我觉得这会对很多新手有指引作用,当初自己也是瞎子过河的摸索着过来的.目前后台开发比较流行的MVC框架中使用Spring MVC还是比较多的,当然还有Spring ...

  2. Swagger UI 与SpringMVC的整合 II

    pom.xml <!-- swagger开始 --> <dependency> <groupId>io.springfox</groupId> < ...

  3. spring-mvc集成 swagger

    问题1:spring-mvc集成 swagger, 配置好后界面 404, 原因: dispatcher-servlet.xml 文件中, 要在这上面 <!-- 启用spring mvc 注解 ...

  4. springMVC整合swagger(亲自试验完全可用)

    swagger是什么: [plain] view plain copy Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件.本文简单介绍了在项目中集成swagger的方法和一 ...

  5. ABP框架 - Swagger UI 集成

    文档目录 本节内容: 简介 Asp.net Core 安装 安装Nuget包 配置 测试 Asp.net 5.x 安装 安装Nuget包 配置 测试 简介 来自它的网页:“...使用一个Swagger ...

  6. ABP理论学习之Swagger UI集成

    返回总目录 本篇目录 介绍 安装 安装Nuget包 配置 测试 介绍 从官方网站上可以看到:"启用了Swagger API,就可以获得交互式文档,生成和发现客户端SDK". 安装 ...

  7. ASP.NET Core 在 Swagger UI 中显示自定义的 Header Token

    Swagger 是个好东西,对于前后端分离的网站来说,不仅是提高前后端开发人员沟通效率的利器,也大大方便了后端人员测试 API.有时候,API 中可能需要在 Header 中设置认证参数,比如 aut ...

  8. 在Abp中集成Swagger UI功能

    在Abp中集成Swagger UI功能 1.安装Swashbuckle.Core包 通过NuGet将Swashbuckle.Core包安装到WebApi项目(或Web项目)中. 2.为WebApi方法 ...

  9. TP框架整合Swagger UI接口文档

    1.下载swagger ui:http://swagger.io/swagger-ui/: 2.在应用目录里新建一个目录xxx:如图 3.解压后把dist目录的所有文件拷贝到新建的目录里面: 4.在新 ...

随机推荐

  1. FastReport二维码打印存在的问题

    FastReport二维码打印存在的问题 (2018-05-21 09:28:38) 转载▼ 标签: delphi 分类: Delphi10.2 FastReport本身支持二维码,实际应用中遇到这样 ...

  2. Opencv3.4:显示一张图片

    Github https://github.com/gongluck/Opencv3.4-study.git #include "opencv2/opencv.hpp" using ...

  3. WinForm中DataGridView的TextBoxColumm换行

    一.内容超过显示宽度自动换行: 在需要自动换行的列中设置 二.换行符换行: 一开始在需要换行的文本添加"\r\n"并不能直接换行,DGV直接把\r\n显示出来了,后换成 Syste ...

  4. 【BZOJ4755】 [Jsoi2016]扭动的回文串

    BZOJ4755 [Jsoi2016]扭动的回文串 Solution 考虑对于他给出的 A中的一个回文串: B中的一个回文串: 或者某一个回文的扭动字符串S(i,j,k) 这样子几个限制,我们1,2就 ...

  5. jzoj3084

    發現題目函數本質是: 1.將某一數x的末尾1去掉 2.不斷將這個數/2,直到遇到新的1 我們發現一個數z可以用y步到達數x,記x二進制長度為c,分2種情況討論: 1.x是奇數,則z的前c個二進制數必須 ...

  6. 利用Python做绝地科学家(外挂篇)

    i春秋作家:奶权 前言  玩吃鸡时间长的鸡友们 应该都知道现在的游戏环境非常差 特别在高端局 神仙满天飞 搞得很多普通玩家非常没有游戏体验  因为吃鸡的火爆 衍生出了一条巨大的外挂利益链 导致市面上出 ...

  7. postgresql 简单入门

    安装 https://www.postgresql.org/download/linux/redhat/yum install https://download.postgresql.org/pub/ ...

  8. MySQL字符集的设置

    Notice:文章基于ubuntu系统而写 1.关于MySQL字符集 MySQL的字符集支持(Character Set Support)有两个方面: 字符集(Character set)和排序方式( ...

  9. Android从零开始

    Android开发环境的安装 1 IDE Android可以使用开发的IDE有Eclipse 或者 Android Studio.Android Studio还处于v 0.1.x版本,是early a ...

  10. 函数指针与typedef

    #include<bits/stdc++.h> using namespace std; //定义一个函数指针 typedef int (*Fun)(int,int); int add(i ...