精华内容
下载资源
问答
  • Swagger配置

    2020-02-12 20:33:50
    Swagger 配置 package com.swaggerdemo.swagger.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.core....

    Swagger 基础·

    package com.swaggerdemo.swagger.config;
    
    
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.core.env.Environment;
    import org.springframework.core.env.Profiles;
    import springfox.documentation.builders.RequestHandlerSelectors;
    import springfox.documentation.service.ApiInfo;
    import springfox.documentation.service.Contact;
    import springfox.documentation.spi.DocumentationType;
    import springfox.documentation.spring.web.plugins.Docket;
    import springfox.documentation.swagger2.annotations.EnableSwagger2;
    
    import java.util.ArrayList;
    
    import static springfox.documentation.service.ApiInfo.DEFAULT_CONTACT;
    /*
     创建一个Swagger的配置文件类
    */
    //配置到配置里面
    @Configuration
    @EnableSwagger2//开启Swagger需要写这个注解
    public class SwaggerConfig {
        @Bean
        public Docket docket1() {
            return new Docket(DocumentationType.SWAGGER_2).groupName("A");//设置额外的分组A
        }
        @Bean
        public Docket docket(Environment environment) {
            //设置Swagger环境
            Profiles profiles = Profiles.of("dev","pro");
            //获取生产环境
            //获得一个激活的文件()
            boolean b = environment.acceptsProfiles(profiles);
            return new Docket(DocumentationType.SWAGGER_2)//创建一个Docket需要一个DocumentType类的
                  .apiInfo(apiInfo())//Api文档的信息
                  .enable(b)//是否自动开启
                  .groupName("程序作家")//组的名字
                  .select()//选择需要显示的接口,需要用apis()方法来指定扫描的包
                  .apis(RequestHandlerSelectors.basePackage("com.swaggerdemo.Controller"))//指定扫面的Controller的完全限定名字
                  .build();//使用bild来创建一个Docket
    
    
        }
        //配置Swagger 配置类
        private ApiInfo apiInfo(){
           Contact contact = new Contact("程序员作家","https://blog.csdn.net/SSHH_ZHU","605345115@qq.com");//创建
            return new ApiInfo(
                    "程序员作家的Swagger",
                    "我的SwaggerAPI文档",
                    "1.0",
                    "https://blog.csdn.net/SSHH_ZHU",
                    contact,
                    "Apache 2.0",
                    "http://www.apache.org/licenses/LICENSE-2.0",
                    new ArrayList());
        }
    
    
    }
    

    在这里插入图片描述

    展开全文
  • swagger配置

    千次阅读 2018-07-20 11:28:25
    RestfulAPI 文档生成管理工具,通过 swagger-spring 项目实现了与 Sping MVC 框架的无缝集成功能,方便生成 spring restful 风格的接口文档,在项目中集成这个工具,根据我们自己的配置信息能够自动为我们生成一个 ...

    swagger简介

    Swagger 是一个简单、强大的 RestfulAPI 文档生成管理工具,通过 swagger-spring 项目实现了与 Sping MVC 框架的无缝集成功能,方便生成 spring restful 风格的接口文档,在项目中集成这个工具,根据我们自己的配置信息能够自动为我们生成一个 API 文档展示页,可以在浏览器中直接访问查看项目的接口信息(如下图 1 所示),同时 swagger-ui 还可以测试 spring restful 风格的接口功能,可以对项目提供的每一个 API 接口进行相应的测试。Swagger生成的API文档是实时更新的, API接口有任何改动都会在文档中及时的表现出来。其官方网站为:http://swagger.io/。

    • 前后端分离

    前端-------->前端控制层,视图层
        ↑
        |
        | Restful API
        |

    后端-------->后端控制层,服务层,数据访问层

    • 前后分离好处:相对独立且松耦合
    • 导致问题
      • 前后端集成--->CI/CD
        • 前端或者后端无法做到"及时商量,尽早解决",最终导致集中爆发
        • CI:持续集成(Continuous integration)是一种软件开发实践,每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。
        • CD:持续部署(continuous deployment)是通过自动化的构建、测试和部署循环来快速交付高质量的产品。
    • 解决方案
      • 首先定义schema,并实时跟踪最新的API,降低集成风险
    • swagger
      • Restful API文档在线自动生成器--->API文档与API定义自动更新
      • 直接运行,在线测试API
      • 支持多种语言(比如:java,php等)
      • 官网https://swagger.io
    • spring集成swagger--->springfox
      • springfox-swagger2
      • swagger-springmvc
    • swagger演示
      • http://itrp.cn/biz/swagger-ui.html
      • 需要将前端工程及缓存配置注释掉
      •  

     

     

    项目中集成swagger

    • 项目环境
      • jdk1.8--->swagger2必须使用1.8以上版本jdk
      • spring-4.1.7
      • mybatis-3.3.2
    • springmvc集成springfox-swagger2构建Restful API
      • maven依赖
        • springfox-swagger2
        • springfox-swagger-ui
        • guawa:google相关
        • mapstruct-jdk8:对象结构相关
        • jackson
          • jackson-core
          • jackson-databind
          • jackson-annotations
    1.     <groupId>io.springfox</groupId>
    2.    <artifactId>springfox-swagger2</artifactId>
    3.     <version>2.4.0</version>
          <exclusions>
              <exclusion>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-aop</artifactId>
              </exclusion>
              <exclusion>
                  <groupId>com.fasterxml</groupId>
                  <artifactId>classmate</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>io.springfox</groupId>
          <artifactId>springfox-swagger-ui</artifactId>
          <version>2.4.0</version>
          <exclusions>
              <exclusion>
                  <groupId>org.springframework</groupId>
                  <artifactId>spring-aop</artifactId>
              </exclusion>
          </exclusions>
      </dependency>
      <dependency>
          <groupId>com.google.guava</groupId>
          <artifactId>guava</artifactId>
          <version>19.0</version>
      </dependency>
      <dependency>
          <groupId>org.mapstruct</groupId>
          <artifactId>mapstruct-jdk8</artifactId>
          <version>1.1.0.Final</version>
      </dependency>
      <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-core</artifactId>
          <version>${jackson.verson}</version>
      </dependency>
      <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-databind</artifactId>
          <version>${jackson.verson}</version>
      </dependency>
      <dependency>
          <groupId>com.fasterxml.jackson.core</groupId>
          <artifactId>jackson-annotations</artifactId>
          <version>${jackson.verson}</version>
      </dependency>

     

    • 集成配置步骤
      • 在pom.xml文件中添加swagger2相关依赖
      • swagger2配置类:SwaggerConfig.java(官网下载)
        • @ComponentScan:设置swagger扫描包
        • @EnableSwagger2:使swagger2生效
        • @Configuration:自动在本类上下文加载一些环境变量信息
      • springmvc配置文件
      1. 使用的页面是静态资源,配置此注解,不让springmvc进行拦截-->
        <mvc:default-servlet-handler/>
        <!--添加指定扫描,让swagger的注解生效-->
        <context:component-scan/>
    • swagger具体应用
      • api加入swagger
        • 通过在api上添加注解实现,api文件的同步效果
        • @Api
          • 表明可供swagger展示的接口类(用在类上面)
        • @ApiOperation
          • 描述api方法(用在方法上面)
        • @ApiParam
          • 单个参数描述
        • @ApiModel
          • 用对象接收参数(用在类上面)
        • @ApiModelProperty
          • 用对象接收参数时,描述对象的一个字段(用在属性上面)
        • SystemCommentController介绍

    nginx配置访问swagger

    • 访问swagger页面
      • http://ip:port/{context-path}/swagger-ui.html
    • 问题
      • 生产环境下,只开放80端口,通过tomcat无法访问swagger
    • 解决方案
      • 通过nginx配置swagger的访问
        • 修改nginx.conf文件
    • swagger在线帮助文档

    http://docs.swagger.io/swagger-core/apidocs

    展开全文
  • swagger配置详解

    千次阅读 2019-08-08 11:32:09
    Swagger配置类 //扫描controler,最好swagger和controler同目录 @ComponentScan(basePackages = {“com.lt.smart_barcelet_auth.controler”}) @Configuration @EnableSwagger2 public class SwaggerConfig { /** *...

    Swagger配置类

    //扫描controler,最好swagger和controler同目录
    @ComponentScan(basePackages = {"com.lt.smart_barcelet_auth.controler"})
    @Configuration
    @EnableSwagger2
    public class SwaggerConfig  {
    
    	/**
    	 * 通过createRestApi函数创建Docket的Bean之后,
    	 * apiInfo()用来创建该Api的基本信息(这些基本信息会展现在文档页面中)
    	 * select()函数返回一个ApiSelectorBuilder实例用来控制哪些接口暴露给Swagger来展现,
    	 * apis()函数扫描所有Controller中定义的API, 并产生文档内容(除了被@ApiIgnore指定的请求)
    	 * @return
    	 */
    	@Bean
    	public Docket createRestApi() {
    		return new Docket(DocumentationType.SWAGGER_2)
    				.apiInfo(apiInfo())
    				.select()
    				.apis(RequestHandlerSelectors.any())
    				.paths(PathSelectors.any())
    				//不显示错误的接口地址
    				.paths(Predicates.not(PathSelectors.regex("/error.*")))//错误路径不监控
    				.paths(PathSelectors.regex("/.*"))// 对根下所有路径进行监控
    				.build();
    		
    	}
    
    	/**
    	 * 创建该Api的基本信息(这些基本信息会展现在文档页面中)
    	 * @return
    	 */
    	private ApiInfo apiInfo() {
    		return new ApiInfoBuilder()
    				.title(" app项目接口文档")
    				.termsOfServiceUrl("www.baidu.com")
    				.version("1.0")
    				.build();
    	}
    }
    

    参数详解
    在这里插入图片描述

    Spring boot - swagger整合依赖

       <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.7.0</version>
        </dependency>
        
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.7.0</version>
        </dependency>
    
    展开全文
  • 使用Swagger配置api

    2018-09-13 16:02:48
    使用Swagger配置api自动生成文档与注释: 官网示例:https://swagger.io/  

    使用Swagger配置api自动生成文档与注释:

    官网示例:https://swagger.io/

     

    展开全文
  • Swagger 配置1.配置基本信息2.设置扫描的包3.自定义注解设置不需要生成接口文档的方法3.1 自定义注解3.2 添加规则3.3 添加 NotIncludeSwagger 注解4.设置范围 可以在项目中创建 SwaggerConfig,进行配置文档内容。 ...
  • swagger配置及注解详解

    千次阅读 2020-11-02 17:23:03
    swagger配置及注解详解 1.加入依赖的jar包 <!--引入swagger的依赖--> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <...
  • spring security+swagger配置

    千次阅读 2020-08-26 18:20:34
    基于spring security ...重写configure方法swagger 配置 1.spring boot 配置 security 1.1.继承WebSecurityConfigurerAdapter /** * spring security配置 * * @author Armson. */ @EnableGlobalMethodSecurity
  • SpringBoot swagger 配置账号密码

    万次阅读 2018-09-18 18:30:53
    生产环境下springboot中 swagger 配置账号密码 &amp;amp;lt;!-- 鉴权 --&amp;amp;gt; &amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;org.springframework.boot&...
  • swagger配置

    2018-09-06 15:01:35
    springboot整合swagger,通过整合可以通过访问swagger-ui查看所有后台接口
  • IDEA Swagger 配置

    千次阅读 2019-08-04 11:18:42
    现在的项目大多数都是前后端分离,所以对于后端开发,我们需要一个接口工具帮我们进行接口的整理、也方便我们测试。推荐postMan和Swagger形式,然后postMan需要自己手写接口,...配置Swagger2配置文件 @Configuratio...
  • Swagger配置示例

    千次阅读 2019-12-11 10:16:57
    Swagger与Postman不同,不支持在请求中传递Cookie https://stackoverflow.com/questions/38984456/include-cookie-in-swagger-doc-requests 添加Swagger相关依赖,注意需要添加springfox-swagger-ui才能访问...
  • Swagger配置完之后无法访问

    千次阅读 2019-06-19 09:57:00
    在使用swagger配置后,一开始可以正常访问,在后来打开链接的时候一直出现下面的弹框 Unable to infer base url. This is common when using dynamic servlet registration or when the API is behind an API ...
  • swagger 配置文件

    千次阅读 2019-08-14 22:58:56
    swagger 接口文档生成组件。 在这里插入图片描述 1 加入依赖 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2&...
  • SpringMVC+Swagger配置使用踩坑 背景 换了工作,从Android搬砖工成为了产品经理,本以为翻身农奴把歌唱,结果发现公司除了前端就只有我这个产品经理了。没办法,了解一下后端开发顶一阵子。接口写完之后手写接口文档...
  • .netCore3.1升级到.net5 swagger 配置的问题 原来在.netCore3.1 配置swagger 是在这写的,如图所示 升级到.net5的时候启动API报这样的错:如图所示 这时,把swagger配置即可成功,如图所示
  • 项目添加swagger配置,添加公共的header参数一、配置代码,为swagger-ui.html页面添加全局header参数,user_id、token二、测试效果 一、配置代码,为swagger-ui.html页面添加全局header参数,user_id、token import...
  • .Net5 WebApi Swagger配置(1)添加注释 为了让调用者更加清楚每个方法和参数的作用,我们可以考虑把注释展示到swagger页面中
  • swagger配置很简单,但是,因为使用到了拦截器,所以,就不简单了,刚开始怎么也不能显示接口列表,后来才发现是拦截器的问题,然后就各种方法的试试。刚开始是配置webmvc的静态资源类来过滤,但是后来发现还是不行...
  • 在生产环境下,我们需要关系swagger配置,避免暴露接口这种危险的行为。 方法: 1.使用@value()注解(配置文件为properties的时候) @Configuration @EnableSwagger2 public class SwaggerConfig { @Value(...
  • Swagger配置及使用

    2021-02-21 00:30:54
    Swagger简介配置合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个...
  • 使用注解 @ConditionalOnProperty(prefix = "swagger",value = {"enabled"...然后在配置文件中配置 swagger: enabled: true 就可以了,true为开启swagger,flase为关闭!...
  • Swagger配置手记

    千次阅读 2017-01-22 10:21:10
    Swagger 是一款RESTFUL接口的文档在线自动生成+功能测试功能软件。本文简单介绍了在项目中集成swagger的方法和一些常见问题。如果想深入分析项目源码,了解更多内容,见参考资料。 Swagger 是一个规范和完整的...
  • .Net5 WebApi Swagger配置(2)支持携带Token访问 实际调用webapi中,调用者往往需要携带token信息访问,这个时候我们需要再swagger页面中添加配置token的功能,否则就是耍流氓
  • 本文主要介绍swagger-ui及加强版swagger-bootstrap-ui配置 一:普通swagger-ui配置 1:pom添加依赖 <!--swagger--> <dependency> <groupId>io.springfox</groupId> <artifactId>...
  • Swagger配置(SpringMVC、SpringBoot)

    千次阅读 2017-04-01 16:18:09
    Swagger配置(SpringMVC、SpringBoot) > 微信图片_20170331175130.png" src=...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 39,748
精华内容 15,899
关键字:

swagger配置