簡單搭建swagger2

最近使用接口開發,沒有頁面調試,使用postMan感覺不太方便,所以搭建一個swagger提供接口,話不多說,直接步驟

一、pom文件集成swagger2的jar包

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

二、配置類

因爲筆者是springboot開發,所以在springboot啓動類同級編寫swagger2的配置類

package com.jhsec;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.ParameterBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.schema.ModelRef;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Parameter;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

import java.util.ArrayList;
import java.util.List;

/**
 * Created by mc on 2019/7/18.
 */
@Configuration
@EnableSwagger2
public class Swagger2 {
    @Bean
    public Docket createRestApi() {

        //在配置好的配置類中增加此段代碼即可 ====消息頭部分
        ParameterBuilder ticketPar = new ParameterBuilder();
        List<Parameter> pars = new ArrayList<Parameter>();
        ticketPar.name("X-Auth-Code").description("Header")//name表示名稱,description表示描述
                .modelRef(new ModelRef("string")).parameterType("header")
                .required(true).defaultValue("HFsgOo%7992gJ*RdlIhdcgV*qTfBivJQmp").build();//required表示是否必填,defaultvalue表示默認值
                pars.add(ticketPar.build());//添加完此處一定要把下邊的帶***的也加上否則不生效

        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo()).select()
                .apis(RequestHandlerSelectors.basePackage("com.jhsec"))
                .paths(PathSelectors.any())
                .build()
                .globalOperationParameters(pars);//************把消息頭添加;
    }
    private ApiInfo apiInfo() {
        return new ApiInfoBuilder()
                .title("hf ifc APIs")
                .description("api test")
                .termsOfServiceUrl("http://localhost:8080/swagger-ui.html")
                .contact("machao")
                .version("1.0")
                .build();
    }


}

注意:這裏的參數詳解可自行查詢

三、控制層配置

注意:因爲筆者的控制層複合開發規範所以沒有進行配置。swagger就能自動識別,當然也可以自行參考。

四、javabean 的配置。筆者略過。因爲可配可不配

五、在瀏覽器訪問 http://localhost:8080/swagger-ui.html 就可以訪問了

大體就這些

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章