0
点赞
收藏
分享

微信扫一扫

Swagger之学习使用


前言

这个是为了介绍一下Swagger的使用,最近也在使用Swagger,就在下面这篇文章介绍下,我特地改了上次分享的外卖项目,添加了Swagger注解…

添加依赖

Maven项目添加依赖

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-swagger2</artifactId>
<version>3.0.0</version>
</dependency>

Spring Boot添加项目依赖

<dependency>
<groupId>io.springfox</groupId>
<artifactId>springfox-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>

Swagger 项目的配置文件

@Configuration
public class SpringFoxConfig {
@Bean
public Docket api() {
return new Docket(DocumentationType.SWAGGER_2)
.select()
.apis(RequestHandlerSelectors.any())
.paths(PathSelectors.any())
.build();
}
}

Spring boot项目需要添加配置项到你的Swagger配置类上***@EnableSwagger2WebMvc***

@Configuration
@EnableSwagger2WebMvc
public class SpringFoxConfig {
}

如果不是Spring boot的话,就不能自动配置好请求的路径,其他项目就需要添加Swagger的静态资源的配置路径映射,这个资源映射我们需要添加

@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("swagger-ui.html")
.addResourceLocations("classpath:/META-INF/resources/");

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

添加Swagger-UI,Swagger-UI可以帮助你查看接口文档和测试,我们需要添加一个依赖

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

我们可以通过浏览器去访问它

​​http://localhost:8080/your-app-root/swagger-ui/​​

相关注解

使用Swagger注解是服务于前后端分类开发,更加方便我们和前端进行对接,那接口文档是怎么样可以生成呢,前面我们只是搭建了接口查看的地址,那这些接口时怎么扫描进去的呢,下面我将列举一些常用到的注解出来以及怎么使用。

注解

说明

@ApiModel(value =“地址信息”)

这个value是对接口的描述,一般我们对将这个注解加在Controller上。

@ApiOperation(value = “新增地址”)

这个注解是添加在方法上,是用于方法描述,tags是用来进行分组,produces是指定返回内容类型,consumes时指定提交处理请求的内容类型

@ApiParam(value = “地址信息”, required = true)

参数说明,value是参数描述,而required是否为必填项,

@ApiModel(“菜品”)

对象实体类的说明,value是实体的说明

@ApiModelProperty(“菜品id”)

value类的字段说明,required表示是否为必填项,hidden是隐藏

上述就是我们比较常用的注解,通过这些注解我们可以在运行我们的项目时,通过访问路径就可以访问接口文档,这样在对前后端进行分离开发时也会更加方便,而且一般接口文档都可以支出导出多种形式,下面是我项目的接口文档接口,项目的介绍也有下面这个链接,我使用的是一个依赖,但是对请求路径映射也是需要配置的。

​​项目地址​​:

<dependency>
<groupId>com.github.xiaoymin</groupId>
<artifactId>knife4j-spring-boot-starter</artifactId>
<version>3.0.2</version>
</dependency>

Swagger之学习使用_spring


举报

相关推荐

0 条评论