>Java >java지도 시간 >springboot 프로젝트에서 Swagger를 사용하는 방법

springboot 프로젝트에서 Swagger를 사용하는 방법

王林
王林앞으로
2023-05-13 08:28:121754검색

1. Swagger란 무엇인가요?

Swagger는 RESTful 인터페이스를 생성, 설명 및 호출하는 데 사용되는 웹 서비스입니다. 일반인의 관점에서 Swagger는 (노출하려는) 프로젝트의 모든 인터페이스를 페이지에 표시하고 인터페이스 호출 및 테스트를 허용하는 서비스입니다.

2. Swagger는 어떤 용도로 사용되나요?

Swagger에는 다음과 같은 세 가지 중요한 기능이 있습니다. 페이지에 프로젝트의 모든 인터페이스를 표시하므로 백엔드 프로그래머는 인터페이스가 업데이트될 때 프런트엔드 사용자를 위한 특별한 인터페이스 문서를 작성할 필요가 없습니다. 코드 수정 Swagger 설명은 실시간으로 새 인터페이스 문서를 생성할 수 있으므로 Swagger 페이지를 통해 사용할 수 없는 이전 인터페이스 문서의 문제를 방지하고 인터페이스를 직접 호출하여 개발을 용이하게 할 수 있습니다.

3. springboot에 Swagger를 도입하는 방법

1) 이러한 종속성에서

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

2) 컨트롤러 클래스 생성

import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
 
@RestController
public class TestController {
 
    @PostMapping("/hello")
    public String hello(String str){
        return "hello,"+str;
    }
}

3) Swagger 구성 클래스 생성 SwaggerConfig 클래스

@Configuration
@EnableSwagger2//开始Swagger2
public class SwaggerConfig {
 
 
    //配置了Swagger 的Docket的bean实例
    @Bean
    public Docket docket(){
 
        ParameterBuilder ticketPar = new ParameterBuilder();
        List<Parameter> pars = new ArrayList<>();
        ticketPar.name("Authorization").description("token")//Token 以及Authorization 为自定义的参数,session保存的名字是哪个就可以写成那个
                .modelRef(new ModelRef("string")).parameterType("header")
                .required(false).build(); //header中的ticket参数非必填,传空也可以
        pars.add(ticketPar.build());    //根据每个方法名也知道当前方法在设置什么参数
 
        return new Docket(DocumentationType.SPRING_WEB)
                .apiInfo(apiInfo())
                .select()
                //RequestHandlerSelectors, 配置要扫描接口的方式
                //basePackage:指定要扫描的包
                //any():扫描全部
                //withClassAnnotation: 扫描类上的注解
                //withMethodAnnotation: 扫描方法上的注解
                .apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))
                .build()
                .globalOperationParameters(pars);
    }
 
    //配置Swagger 信息=apiInfo
    private ApiInfo apiInfo(){
        return new ApiInfo(
                "Logistics Api",//文檔命名
                "test",//文檔描述
                "v1.0",//
                "http:127.0.0.1/",
                null,//contact
                "Apache 2.0",
                "http://www.apache.org/licenses/LICENSE-2.0",
                new ArrayList()
        );
    }
}

주의!

주의!

주의!

apis(RequestHandlerSelectors.basePackage("com.example.swagger.controller"))의

"com.example.swagger.controller" 경로를 자신의 컨트롤러 패키지 경로로 작성하세요

4. 프로젝트

springboot 프로젝트에서 Swagger를 사용하는 방법

5. URL을 통해 웹페이지에 접속합니다.

위 단계를 완료한 후 실행을 클릭합니다. 실행 후 브라우저에서 다음 URL을 방문합니다.

http://127.0.0.1:8080/swagger- ui.html#/

여기 포트는 자신의 포트로 변경해야 합니다.

효과는 사진과 같습니다

springboot 프로젝트에서 Swagger를 사용하는 방법

위 내용은 springboot 프로젝트에서 Swagger를 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제