关于swagger-ui简单使用

发布时间 2023-09-25 13:46:30作者: 不忘初心2021
swagger-ui为了将我们的更好展示,类似接口文档,方便前端同事做开发
pom依赖
 <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.6.1</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.6.1</version>
        </dependency>

  配置

import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

/**
 * @Description:
 * @Author: 喵星人
 * @Create: 2023/9/25 9:56
 */
@Configuration
@EnableSwagger2
@ConditionalOnProperty(name = "swagger.enabled", havingValue = "true")
public class Swagger2Config {

    @Bean
    public Docket createRestApi() {
        return new Docket(DocumentationType.SWAGGER_2)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.java"))
                .paths(PathSelectors.any())
                .build()
                ;
    }

}

  

@PostMapping("/get_user_list")
    @ResponseBody
    @ApiOperation(value = "查询所有用户", notes = "查询所有用户", response =  UserVo.class,responseContainer = "List")
    public ResDTO getUserList(@RequestBody UserParm queryParam) throws Exception {
        List<UserVo> orgInfo = userService.get(queryParam);
        return ResDTO.ok(orgInfo);
    }

  

 访问地址是 127.0.0.1:8080/swagger-ui.html,需要注意的是有的项目会加上根路径,同时项目中还使用权限管理,这时需要查询浏览器的后台日志打印,显示401的需要忽略

不同环境做管控

@ConditionalOnProperty(name = "swagger.enabled", havingValue = "true")

  

swagger开关,true为打开,false为关闭
swagger.enabled: true

  可以根据实际情况配置