SpringMvc整合Swagger(spring版本在4.1.8以上,深深的痛)
1.先搭建好springmvc的环境
2.修改pom文件
<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.7.0</version> </dependency>
3.也需要引入jackson的包
4.定义一个swagger的配置类
@EnableWebMvc@Configuration@EnableSwagger2public class SwaggerConfig { @Bean public Docket buildDocket() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.basePackage("jk.zmn.mvc.controller")) //要扫描的API(Controller)基础包 .paths(PathSelectors.any()) // and by paths .build(); } private ApiInfo apiInfo() { return new ApiInfoBuilder() .title("接口列表 v1.1.0") // 任意,请稍微规范点 .description("接口测试") // 任意,请稍微规范点 .termsOfServiceUrl("http://localhost:8080/swagger-ui.html") // 将“url”换成自己的ip:port .contact("laowu") // 无所谓(这里是作者的别称) .version("1.1.0") .build(); } }
5.修改springmvc的配置文件,放行一些静态资源
<mvc:resources location="classpath:/META-INF/resources/" mapping="swagger-ui.html"/> <mvc:resources location="classpath:/META-INF/resources/webjars/" mapping="/webjars/**"/> <!--<!– 添加扫描配置类 –>--> <bean class="jk.zmn.mvc.config.SwaggerConfig" />
6.新建controller,定义一些相关的文档
@RestController@RequestMapping("test")@Api(value = "Test")public class TestController { @RequestMapping("index") @ApiOperation(value = "进入首页面") public String index(){ return "index"; } }
7.访问http://ip:端口/项目名/swagger-ui.html即可
SpringBoot整合swagger
1.新建springboot项目
2.引入swagger的jar包
<!-- Swagger --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.7.0</version> </dependency> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.7.0</version> </dependency>
3.定义swagger的配置类
@Configuration@EnableSwagger2public class SwaggerConfig { @Bean public Docket buildDocket() { return new Docket(DocumentationType.SWAGGER_2) .select() .apis(RequestHandlerSelectors.basePackage("jk.zmn.swaggerspringboot.controller")) //要扫描的API(Controller)基础包 .paths(PathSelectors.any()) // and by paths .build() .apiInfo(buildApiInf()); } private ApiInfo buildApiInf() { return new ApiInfoBuilder() .title("Spring Boot中使用Swagger2 UI构建API文档") .contact("test") .version("1.0.0") .build(); } }
4.自定义controller生成文档
5.访问http://ip:端口/项目名/swagger-ui.html即可
作者:z七夜
链接:https://www.jianshu.com/p/4fb79d9abd9c