当前位置: 移动技术网 > IT编程>开发语言>Java > swagger详细使用

swagger详细使用

2020年07月16日  | 移动技术网IT编程  | 我要评论

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、效果演示

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



在这里插入图片描述

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网