返回顶部
首页 > 资讯 > 后端开发 > Python >Java详解swagger2如何配置使用
  • 342
分享到

Java详解swagger2如何配置使用

2024-04-02 19:04:59 342人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录1、引入jar包2、启用swagger application.properties3、配置文件swagger可能会遇到的问题: 当我们的接口返回的数据太大的时候,swagger

swagger可能会遇到的问题:

当我们的接口返回的数据太大的时候,swagger会崩溃

1、引入jar包

 <!--接口文档-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.10.5</version>
            <exclusions>
                <exclusion>
                    <groupId>io.swagger</groupId>
                    <artifactId>swagger-annotations</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>io.swagger</groupId>
                    <artifactId>swagger-models</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>org.springframework.plugin</groupId>
                    <artifactId>spring-plugin-core</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-annotations</artifactId>
            <version>1.6.0</version>
        </dependency>
        <dependency>
            <groupId>io.swagger</groupId>
            <artifactId>swagger-models</artifactId>
            <version>1.6.0</version>
        </dependency>

2、启用swagger application.properties

不用了

#swagger开关
swagger.enable=true

3、配置文件

package com.zkhx.config;
import com.GitHub.xiaoymin.knife4j.spring.annotations.EnableKnife4j;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
import springfox.bean.validators.configuration.BeanValidatorPluginsConfiguration;
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.EnableSwagger2Webmvc;
import java.util.ArrayList;
import java.util.List;
@Configuration // 标明是配置类
@EnableSwagger2WebMvc 
@EnableKnife4j
@Import(BeanValidatorPluginsConfiguration.class)
public class SwaggerConfig {
    
    @Bean
    public Docket createRestApi() {
        ParameterBuilder tokenPar = new ParameterBuilder();
        List<Parameter> pars = new ArrayList<>();
        //header中的token参数非必填,传空也可以
        tokenPar.name("token").description("请求接口所需Token")
                .modelRef(new ModelRef("string")).parameterType("header")
                .required(false).build();
        pars.add(tokenPar.build());
        return new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(metaData())
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.zkhx.controller"))
                .paths(PathSelectors.any())
                .build()
                .globalOperationParameters(pars);
    }
    private ApiInfo metaData() {
        return new ApiInfoBuilder()
                .title("XX服务API文档")
                .description("sun")
                .termsOfServiceUrl("")
                .version("1.0")
                .build();
    }
}

Docket(DocumentationType.SWAGGER_2)  :DocumentationType.SWAGGER_2 固定的,代swagger2
groupName("") // 如果配置多个文档的时候,那么需要配置groupName来分组标识
apiInfo(apiInfo()) // 用于生成API信息
select() // select()函数返回一个ApiSelectorBuilder实例,用来控制接口被swagger做成文档
apis(RequestHandlerSelectors.basePackage("com.example.controller")) // 用于指定扫描哪个包下的接口
paths(PathSelectors.any())// 选择所有的API,如果你想只为部分API生成文档,可以配置这里
apiInfo() :
    title("XX项目API") //  可以用来自定义API的主标题
     description("XX项目SwaggerAPI管理") // 可以用来描述整体的API
     termsOfServiceUrl("") // 用于定义服务的域名
      version("1.0") // 可以用来定义版本。

三级目录

@Api(tags = “角色管理”) // tags:你可以当作是这个组的名字。

@RestController

public class RoleController {

}

@RestController
@Slf4j
@RequestMapping("/phm/db")
@Api(tags = "数据筛查")
public class DbController {
    @Autowired
    private StatusDbService statusDbService;
    @GetMapping("/field/data")
    @ApiOperation(value = "通过时间及单元id获取数据筛查所需数据")
    public ResultMsg getFieldByUnitIdWithTime( 
    @ApiParam("结束时间") @RequestParam(value = "endTime", required = false) @DateTimeFORMat(pattern = "yyyy-MM-dd HH:mm:ss") Date endTime);
    }

访问

Http://localhost:8080/doc.html

到此这篇关于Java详解swagger2如何配置使用的文章就介绍到这了,更多相关Java swagger内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java详解swagger2如何配置使用

本文链接: https://lsjlt.com/news/153031.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java详解swagger2如何配置使用
    目录1、引入jar包2、启用swagger application.properties3、配置文件swagger可能会遇到的问题: 当我们的接口返回的数据太大的时候,swagger...
    99+
    2024-04-02
  • springboot项目配置swagger2示例详解
    swagger简介   Swagger是一款RESTful接口的文档在线自动生成、功能测试功能框架。一个规范和完整的框架,用于生成、描述、调用和可视化RESTful风格的Web服务,...
    99+
    2024-04-02
  • 详解Java如何使用注解来配置Spring容器
    目录介绍@Bean and @ConfigurationAnnotationConfigApplicationContext实例化容器通过使用 register(Class...) ...
    99+
    2024-04-02
  • Swagger2配置方式以及如何解决404报错
    Swagger2配置方式以及如何解决404报错,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Swagger2配置在spring boot项目中配置Swagger2,配置好了...
    99+
    2023-06-25
  • 如何在SpringBoot中使用Swagger2
    如何在SpringBoot中使用Swagger2?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。引入依赖<dependency>   ...
    99+
    2023-06-14
  • 如何使用PyCharm及常用配置详解
    目录一、Python 的 IDE —— PyCharm1.1 集成开发环境(IDE)1.2 PyCharm 介绍二、PyCharm上手使用2.1 创建Python项目2.2 新建Py...
    99+
    2024-04-02
  • Nginx配置使用详解
    配置步骤: 1、配置nginx的方法:首先要打开“/etc/nginx/conf.d/”文件夹; 2、然后创建配置文件;接着在“/etc/ngi...
    99+
    2024-04-02
  • Spring MVC利用Swagger2如何构建动态RESTful API详解
    前言本文主要给大家介绍了关于Spring MVC用Swagger2构建动态RESTful API的相关内容,当多终端(WEB/移动端)需要公用业务逻辑时,一般会构建 RESTful 风格的服务提供给多终端使用。为了减少与对应终端开发团队频繁...
    99+
    2023-05-30
    swagger2 springmvc restful
  • 详解PyCharm如何配置TensorFlow
    PyCharm是一款功能强大的集成开发环境(IDE),因其简洁易用,被广泛应用于Python开发领域。而TensorFlow则是谷歌推出的一个开源机器学习框架,深受开发者青睐。本文将详...
    99+
    2024-02-24
    pycharm 配置
  • obix协议在java中的配置和使用详解
    前言本文主要给大家介绍的是关于obix协议在java中的配置和使用,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。什么是 oBIX?简单来讲,obix是一种 XML 通讯协议,使用Http Request/Post...
    99+
    2023-05-31
    java obix协议 通讯协议
  • java中properties配置文件如何使用
    在Java中,可以使用Properties类来读取和写入配置文件,配置文件通常是以.properties文件格式保存的。1. 读取配...
    99+
    2023-10-18
    java
  • SpringBoot项目中使用Swagger2及注解解释的详细教程
    目录一、导入Swagger坐标依赖二、在spring启动类添加注解@EnableSwagger2三、启动项目,查看swaggerui.html界面四,编写SwaggerConfig配...
    99+
    2023-05-14
    springboot使用swagger2 springboot swagger2
  • 使用Spring MVC4 如何配置注解
    使用Spring MVC4 如何配置注解?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。在传统的Spring项目中,我们要写一堆的XML文件。而这些XML文件格式...
    99+
    2023-05-31
    springmvc 注解配置
  • Ubuntu如何配置默认Java使用哪个
    这篇文章给大家分享的是有关Ubuntu如何配置默认Java使用哪个的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ubuntu简介Ubuntu是一个以桌面应用为主的Linux操作系统,其名称来自非洲南部祖鲁语或豪萨...
    99+
    2023-06-27
  • 12-Composer的配置与使用详解
    1、自定义类与非类的自动加载与测试 # composer> php 包管理工具 ,类似npm1.自己写的类,函数,接口,常量等全局成员,通过自动加载来实现按需加载2.自己写的代码,有哪些依赖,用到了哪些外部成员,我自己知道,可以自己管理3....
    99+
    2023-09-05
    composer php 开发语言
  • SpringSecurity使用LambdaDSL配置流程详解
    目录1. 概述2. 新老配置风格对比Lambda风格等效的旧配置风格3. WebFlux Security4. Lambda DSL的目标1. 概述 在 Spring Securit...
    99+
    2023-02-15
    Spring Security Lambda DSL Spring Lambda DSL配置
  • Android中的OpenGL使用配置详解
    目录引言介绍GLSurfaceViewEGL配置渲染setDebugFlags和setGLWrapper渲染器Renderer坐标映射绘制三角形绘制效果引言 PS:虽然感觉好久没更...
    99+
    2023-02-28
    Android OpenGL配置 Android OpenGL
  • storm如何配置使用
    这篇文章主要为大家展示了“storm如何配置使用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“storm如何配置使用”这篇文章吧。示例代码如下:#storm.yaml  配置...
    99+
    2023-06-02
  • 如何使用注解配置Spring容器
    这篇文章给大家分享的是有关如何使用注解配置Spring容器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。具体如下:@Configuration标注在类上,相当于将该类作为spring的xml的标签@Configu...
    99+
    2023-05-30
    spring
  • 使用Spring Aop如何配置AspectJ注解
    这篇文章将为大家详细讲解有关使用Spring Aop如何配置AspectJ注解,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。采用的jdk代理,接口和实现类代码请参考上篇博文。主要是将Aspe...
    99+
    2023-05-31
    springaop aspectj
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作