SpringMvc 集成swagger2
最开始是在Ibase4J开源项目中得知的swagger开源在线api测试文档。觉得还可以就使用到项目中了。一下是整合步骤:(本项目集成基于Maven Springmvc环境)
1、添加pom.xml增加依赖包:
<!-- swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.4.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.4.0</version> </dependency> <!-- 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> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-annotations</artifactId> <version>2.6.5</version> </dependency> </dependencies>
2、在项目中添加swagger的配置文件SwaggerConfig.java
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
@Configuration
@EnableSwagger2
public class SwaggerConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}
3、在项目的spring-mvc.xmlspring配置文件中添加第二步的配置文件,并重新指定
Swagger资源重定向(仅作为后台使用不提供静态资源):
<!--Swagger -->
//com.xmsrs.hengyun.api替换为SwaggerConfig在的包路径
<context:component-scanbase-package="com.xmsrs.hengyun.api"/>
//class 替换为你项目中SwaggerConfig的实际路径
<beanclass="com.xmsrs.hengyun.api.modules.utils.SwaggerConfig"/>
<!--Swagger资源重定向(仅作为后台使用不提供静态资源) -->
<mvc:resourceslocation="classpath:/META-INF/resources/"mapping="swagger-ui.html"/><mvc:resourceslocation="classpath:/META-INF/resources/webjars/"mapping="/webjars/**"/>
4、在项目的Controller中加上@API注解,具体的注解请参考swagger官网:http://swagger.io/
5、浏览器输入:http://localhost:8080/swagger-ui.html#/进行访问,查看是否配置成功。