最近用springboot构建rest接口,考虑到最方便的验证接口,想到了引入swagger。

基本的步骤大致如下:

1.pom中引入swagger依赖:

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
</dependency><dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger-ui</artifactId>
</dependency>

2.创建swagger的配置类:

/** * <Description> <br> *  * @author luoluocaihong<br>* @version 1.0<br>* @taskId <br>* @CreateDate Oct 24, 2016 <br>* @since V8.1<br>* @see XXXX <br>*/
@Configuration
@EnableWebMvc
@EnableSwagger2
@ComponentScan(basePackages = { "XXXX" })
public class SwaggerConfig {/*** * Description: <br> *  * @author luoluocaihong<br>* @taskId <br>* @return <br>*/ApiInfo apiInfo() {return new ApiInfoBuilder().title("XXX Web SelfService APIs").description("").license("").licenseUrl("").termsOfServiceUrl("").version("1.0.0").build();}/*** * Description: <br> *  * @author luoluocaihong<br>* @taskId <br>* @return <br>*/@Beanpublic Docket customImplementation() {return new Docket(DocumentationType.SWAGGER_2).select().apis(RequestHandlerSelectors.basePackage("XXXX")).build().directModelSubstitute(org.joda.time.LocalDate.class, java.sql.Date.class).directModelSubstitute(org.joda.time.DateTime.class, java.util.Date.class).apiInfo(apiInfo());}}

3.添加文档内容

/** * <Description> <br> *  * @author luoluocaihong<br>* @version 1.0<br>* @taskId <br>* @CreateDate Jul 2, 2017 <br>* @since V8.0<br>* @see XXXX <br>*/
@Api(value = "Rule Cateory")
@RestController
@EnableAutoConfiguration
@RequestMapping(value = "/iot/ruleengine/v1/rulecatg")
public class RuleCateoryController {/*** 自动注入*/@Autowiredprivate RuleCateoryService ruleCateoryService;@ApiOperation(value = "Query Rule Category and rule", notes = "Query Rule Category and rule",response = RuleCatgObj.class, tags = {"Rule Cateory" })@RequestMapping(value = "", produces = {"application/json" }, method = RequestMethod.GET)@ResponseStatus(value = HttpStatus.OK)@ResponseBodypublic RuleCatgObj QueryRuleCategoryAndRule() {RuleCatgObj ruleCatgObj = ruleCateoryService.queryRuleCategoryAndRule();return ruleCatgObj;}
}

4.启动springboot,访问http://localhost:8081/swagger-ui.html
会发现页面显示报错:

后台报错:

2017-07-02 15:56:51.988 WARN 7176 --- [ qtp20577666-17] o.s.web.servlet.PageNotFound : No mapping found for HTTP request with URI [/swagger-ui.html] in DispatcherServlet with name 'dispatcherServlet'

想一下swagger-ui.html 是在springfox-swagger-ui.jar里的

如何才能让我们能访问到swagger-ui.html???
【百度到,MARK  http://www.jianshu.com/p/840320d431a1】

Spring Boot自动配置本身不会自动把/swagger-ui.html这个路径映射到对应的目录META-INF/resources/下面。我们加上这个映射即可。

/** * <Description> <br> *  * @author luoluocaihong<br>* @version 1.0<br>* @taskId <br>* @CreateDate Jul 2, 2017 <br>* @since V8.0<br>* @see XXXX <br>*/
@Configuration
public class WebMVCConfig extends WebMvcConfigurerAdapter {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("swagger-ui.html").addResourceLocations("classpath:/META-INF/resources/");

registry.addResourceHandler("/webjars/**")
                 .addResourceLocations("classpath:/META-INF/resources/webjars/");

    }}

再次启动springboot,访问http://localhost:8081/swagger-ui.html,OK:

将默认访问路径“/”修改为“/ruleengine”  ,如果不加上下面这段代码,访问将有问题:

registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");

springboot (spring mvc)集成swagger相关推荐

  1. Spring MVC学习总结(12)——Spring MVC集成Swagger时报错{schemaValidationMessages:[

    在springmvc结合swagger的时候,如果将项目部署到服务器上就会出现问题出现下面的图标: 点开会报错误信息: schemaValidationMessages":<

  2. Spring MVC学习总结(11)——Spring MVC集成Swagger跨域问题

      <!-- CORS配置,为了让别的机器访问本机的swagger接口文档服务 -->          <dependency>              <group ...

  3. Spring MVC学习总结(13)——Spring MVC集成Swagger时文档无法排序问题

    添加排序属性: window.swaggerUi = new SwaggerUi({      ...      apisSorter: "alpha", // can also ...

  4. Spring Boot集成Swagger

    Spring Boot集成Swagger @(Swagger)[swagger, springfox, springboot] Spring Boot集成Swagger 前言 基本概述 案例 引入依赖 ...

  5. Spring MVC 集成 jackson-dataformat-xml 问题

    Spring MVC 集成 jackson-dataformat-xml 问题 HttpMessageNotWritableException Could not write content 注:如果 ...

  6. SpringBoot Spring MVC

    一.初始Spring MVC 1.1 什么是Spring MVC 1.Spring MVC是Spring框架的一部分   Spring MVC是一种轻量级的.基于MVC的Web层应用框架.Spring ...

  7. Spring Boot集成Swagger导入YApi@无界编程

    接口APi开发现状 现在开发接口都要在类似YApi上写文档,这样方便不同的团队之间协作,同步更新接口,提高效率. 但是如果接口很多,你一个个手工在YApi去录入无疑效率很低. 如果是使用Spring ...

  8. spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例...

    本文介绍spring boot集成swagger,自定义注解,拦截器,xss过滤,异步调用,定时任务案例 集成swagger--对于做前后端分离的项目,后端只需要提供接口访问,swagger提供了接口 ...

  9. Spring MVC集成slf4j-logback - 我想跟代码谈谈 - 博客频道 - CSDN.NET

    Spring MVC集成slf4j-logback - 我想跟代码谈谈 - 博客频道 - CSDN.NET

  10. Spring Boot 集成 Swagger 生成 RESTful API 文档

    原文链接: Spring Boot 集成 Swagger 生成 RESTful API 文档 简介 Swagger 官网是这么描述它的:The Best APIs are Built with Swa ...

最新文章

  1. c++ 公有继承的赋值兼容规则
  2. 12 python语言语句块的标记是_7. 简单语句
  3. OpenCV源码安装教程(兼容CUDA)
  4. protobuf入门教程(三):常用序列化/反序列化接口
  5. 堆、栈及静态数据区详解 转
  6. Java笔记-通过反射获取注解及Spring中获取某包下的所有class文件
  7. 爬虫异步错误:raise RuntimeError(‘Event loop is closed‘) RuntimeError: Event loop is closed的解决办法
  8. 修改joomla!底部版权信息的方法
  9. [转载] 细思极恐的星座分析(下)- 外太空?内子宫?人类的天赋从何而来?
  10. 数据结构与算法python—4.栈及python实现与leetcode总结
  11. 正则表达式30分钟入门教程(转载)
  12. S5P4418裸机之SDIO程序
  13. 部署dicuz论坛网站
  14. Codevs1074:食物链——题解
  15. 前端架构设计应该包含哪些东西?
  16. 【Java进阶营】什么是真正的架构设计?某厂十年Java经验让我总结出了这些,不愧是我
  17. 查看tomcat的端口号
  18. CPU后面字母究竟是啥?
  19. 主动推迟面试时间是面试的大忌
  20. gta5在线模式连接不到服务器,gta5线上模式进不去怎么办

热门文章

  1. docker harbor 域名_docker 安装Harbor
  2. android 签名报错,AndroidStudio生成签名apk报错
  3. python中的urllib库_Python2/3中的urllib库
  4. 微信有电脑客户端吗_一台电脑如何开多个微信?你学会了吗?
  5. member.php?mod=register文件在哪里,DEDECMS修改member会员中心文件夹名称 更改member目录名称...
  6. Mac下.DS_Store删除、禁止生成以及恢复生成方式
  7. 简单选择排序_一文带你读懂排序算法(一):冒泡 amp; 快速选择排序 amp; 简单插入排序算法...
  8. python录制生成自动化脚本_懒人做自动化测试之二--自动化脚本录制
  9. bio linux 创建_Linux设备驱动--块设备之概念和框架以及相关结构体
  10. php.ini 忽略警告,配置php.ini去掉警告信息