SpringMVC集成Swagger2,初尝试和遇到的相关问题

xiaoxiao2021-02-27  190

本文章更新页请至:http://blog.csdn.net/MikeLC7/article/details/75088123

之前项目的接口文档都是手动编写Word文档来做,制作成本较高,并且在进行版本迭代的时候进行标注和说明不是很方便,后来发现Swagger之后进行了简单的操作。 截止目前还未深度使用,本文仅记录初次使用Swagger的过程和遇到的问题,后续进行补充。 前言: 当前项目使用SpringMVC,集成Swagger2

Step1: 添加依赖包

<textarea readonly="readonly" name="code" class="java"> <!--springfox 相关依赖 start--> <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> <!--springfox 相关依赖 end--> <!-- 映入JSON --> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-core</artifactId> <version>2.6.5</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.6.5</version> <!-- <scope>provided</scope> --> </dependency> <!-- 映入JSON --> </textarea>

Step2: 添加Spring配置文件中的相关配置:

<textarea readonly="readonly" name="code" class="java"> <!-- swagger start--> <!-- 启动注解 --> <mvc:annotation-driven /> <!-- 配置Swagger相关静态资源 --> <mvc:resources location="classpath:/META-INF/resources/" mapping="swagger-ui.html"/> <mvc:resources location="classpath:/META-INF/resources/webjars/" mapping="/webjars/**"/> <!-- 引用Swagger 默认配置 --> <bean class="springfox.documentation.swagger2.configuration.Swagger2DocumentationConfiguration" id="swagger2Config"/> <!-- 添加Swagger2 扫描目录 --> <context:component-scan base-package="com.train.action" ></context:component-scan> <!-- swagger end --> </textarea> 备注:本次使用的Swagger相关配置是Swagger的默认配置,也可以通过 <textarea readonly="readonly" name="code" class="XML"> <bean class="com.swagger.doc.MySwaggerConfig" /> </textarea> 已上的方式自定义swagger配置类并配置bean。

step3: 确定Spring的url-pattern映射关系为 /:

<textarea readonly="readonly" name="code" class="XML"> <!-- Spring MVC servlet --> <servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:/config/spring-mvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> <async-supported>true</async-supported> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> </textarea> 备注:spring的映射一定要是/,否则swagger2中需要引入相关静态资源可能会因为找不到而导致页面加载失败。 例如: http://localhost/swagger-resources/configuration/ui Failed to load resource: the server responded with a status of 404 (Not Found) 以上为本次记录的全部内容,注解相关API请移步官网参考,因没有正式深度使用,记录的内容较为粗浅,后续正式使用后会进行更新。

转载请注明原文地址: https://www.6miu.com/read-13675.html

最新回复(0)