SpringBoot-Integrate Knife4j

Documento oficial: https://doc.xiaominfo.com/knife4j/documentation/description.html

Al principio, la intención original del proyecto era escribir una versión mejorada de la interfaz de usuario de front-end de swagger, pero con el desarrollo del proyecto, ante las necesidades cada vez más personalizadas, el código Java de back-end tenía para ser escrito para satisfacer las nuevas necesidades, en swagger- Entre las versiones 1.8.5 y 1.9.6 de bootstrap-ui, el código de back-end de Java y la interfaz de usuario se mezclan en un paquete Jar para que lo utilicen los desarrolladores. Aunque este método es muy conveniente para la integración de swagger, solo necesita presentar el paquete jar, pero está un poco hinchado bajo la arquitectura de microservicio.

Lo intenté, es bastante bueno ~~
Está bien, agrega un lanzador

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

Escribe la clase de configuración nuevamente

@Configuration
@EnableSwagger2WebMvc // 更换注解
public class Knife4jConfiguration {
    
    

    @Bean
    public Docket createRestApi() {
    
    
        ApiInfo apiInfo = new ApiInfoBuilder()
                // 文档标题
                .title("Spring-boot项目")
                //文档描述
                .description("V2.0接口规范")
                //服务条款URL
                .termsOfServiceUrl("http://127.0.0.1:80/")
                //版本号
                .version("2.0.0")
                .build();

        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo)
                //是否开启
                .enable(true)
                .select()
                //设置basePackage会将包下的所有被@Api标记类的所有方法作为api
                .apis(RequestHandlerSelectors.basePackage("com.knife4j.demo.controller"))
                //指定路径处理PathSelectors.any()代表所有的路径
                .paths(PathSelectors.any())
                .build();
    }


}

Luego escribe un comentario en el controlador

@Controller
@Api(value = "页面接口",description = "跳转接口测试")
public class HelloController {
    
    
    @RequestMapping("/hello")
    @ApiImplicitParam(name = "url",value = "null",required = true)
    @ApiOperation(value = "跳转hello页面")
    public String index(){
    
    
        return "hello";
    }
}

Por si acaso, agregue una anotación @ EnableKnife4j a la clase de inicio
Startup ... Todavía
Inserte la descripción de la imagen aquí
es bueno para el desarrollo, lo que reduce el tiempo para escribir documentos de desarrollo

Supongo que te gusta

Origin blog.csdn.net/qq_36008278/article/details/114367693
Recomendado
Clasificación