欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

swagger详细使用

程序员文章站 2022-03-26 21:22:13
swagger详细使用Swagger简介1、配置pom文件2、编写SwaggerConfig配置类3、Controller注解3、效果演示Swagger简介Swagger是一个接口文档生成工具,同时提供接口测试调用的辅助功能。1、配置pom文件io.springfoxspringfox-swagger2...

Swagger简介

Swagger是一个接口文档生成工具,同时提供接口测试调用的辅助功能。

1、配置pom文件

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

2、编写SwaggerConfig配置类

package com.sunrise.utils;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger.web.UiConfiguration;
import springfox.documentation.swagger2.annotations.EnableSwagger2;
 
@Configuration
@EnableSwagger2
public class SwaggerConfig {
 
    @Bean
    public Docket buildDocket() {
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(buildApiInf()) // .apiInfo(apiInfo())
                .select()
                .apis(RequestHandlerSelectors.basePackage(""))// 需要生成文档的包的位置
                .paths(PathSelectors.any())
                .build();
    }
 
    private ApiInfo buildApiInf() {
        return new ApiInfoBuilder()
                .title("接口详情")
                .description("Zuul+Swagger2构建RESTful APIs")
                .version("1.0")
                .build();
    }
}

3、Controller注解

package com.sunrise.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

@Api(tags = "登录验证")
@RestController
@RequestMapping("/user")
public class Swagger {
	
	@RequestMapping("/login")
	 @ApiOperation(value = "登录", notes = "name:123  password:123")
	public String table(String name,String password){
		
		if(name.equals("123") && password.equals("123") ) {
			return "验证通过";
		} else {
			return "验证失败";
		}
	}	
}

Swagger相关注释

 * @Api:				修饰整个类,描述Controller的作用
 * @ApiOperation:		描述一个类的一个方法,或者说一个接口
 * @ApiParam:			单个参数描述
 * @ApiModel:			用对象来接收参数
 * @ApiProperty:		用对象接收参数时,描述对象的一个字段
 * @ApiResponse:		HTTP响应其中1个描述
 * @ApiResponses:		HTTP响应整体描述
 * @ApiIgnore:			使用该注解忽略这个API
 * @ApiError :			发生错误返回的信息
 * @ApiImplicitParam:	一个请求参数
 * @ApiImplicitParams:	多个请求参数

3、效果演示

访问地址: http://localhost:8080/swagger-ui.html.
因为我使用的是@RequestMapping("/user")注释会把所以的请求都显示出来

swagger详细使用

swagger详细使用

本文地址:https://blog.csdn.net/weixin_45938430/article/details/107343041

相关标签: 接口测试 java