精华内容
下载资源
问答
  • SpringFox

    2021-04-10 19:57:14
    SpringFox可以自动为我们生成接口描述文档,提供控制层中各个请求的测试界面等. pom.xml中加入依赖: <!-- springfox3--> <dependency> <groupId>io.springfox</groupId> <artifactId&...

    SpringFox可以自动为我们生成接口描述文档,提供控制层中各个请求的测试界面等.

    pom.xml中加入依赖:

    <!--    springfox3-->
        <dependency>
          <groupId>io.springfox</groupId>
          <artifactId>springfox-boot-starter</artifactId>
          <version>3.0.0</version>
        </dependency>
    

    控制层使用注解:

    @Controller
    @Api(tags = "用户请求控制器")
    public class UserController {
        @Autowired
        private UserService userService;
        // 向用户登录页面跳转
        @ApiOperation("向用户登录页面跳转")
        @GetMapping("/userLogin")
        public String toLoginPage(Model model) {
            model.addAttribute("hello","Hello");
            return "login";
        }
    
    
        @ApiOperation("获取用户信息")
        @ApiImplicitParam(name = "Id",value = "")
        @RequestMapping(value = "/getUser",method = RequestMethod.GET)
        public UserVo getUser(Long Id){
            UserVo userVo1=new UserVo(10001L,"Tom");
            UserVo userVo2=new UserVo(10002L,"Tom");
            Map<Long,UserVo> map=new HashMap<>();
            map.put(userVo1.getIdCard(),userVo1);
            map.put(userVo2.getIdCard(),userVo2);
            return map.get(Id);
        }
    
        @ApiIgnore
        @RequestMapping(value = "/ignored")
        @ResponseBody
        public String ignored(){
            return "ignored";
        }
    }
    
    

    @Api:用于Controller类上,对这个类进行说明;
    @ApiOperation:用于Controller的方法中,对这个方法进行说明.
    @ApiIgnore:用于类,方法,参数上,不对其生成说明信息.

    查看生成的说明文档

    访问localhost:项目端口/swagger-ui/index.html
    在这里插入图片描述
    可以看到自己写的UserController,点开可以看到其中的方法:
    在这里插入图片描述
    点开方法,可以看其参数,返回数据类型等:
    在这里插入图片描述

    测试Controller中的方法

    点Try it out,输入需传入的参数,点击execute,即可查看参数结果:
    在这里插入图片描述

    对Controller方法的返回类型生成说明信息

    比如对UserVo生成说明信息:

    @AllArgsConstructor
    @NoArgsConstructor
    @Data
    @ApiModel("个人信息")
    public class UserVo {
        @ApiModelProperty("身份证号")
        private Long idCard;
        @ApiModelProperty("姓名")
        private String name;
        
    }
    

    @ApiModel:对model生成说明
    @ApiModelProperty:对model的属性生成说明

    getUser()方法的返回类型生成了其说明信息:
    在这里插入图片描述

    对Controller方法的参数生成说明信息

    @ApiImplicitParams:用在请求的方法上,表示一组参数说明
    @ApiImplicitParam:用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
    name:参数名
    value:参数的汉字说明、解释
    required:参数是否必须传
    paramType:参数放在哪个地方
    · header --> 请求参数的获取:@RequestHeader
    · query --> 请求参数的获取:@RequestParam
    · path(用于restful接口)–> 请求参数的获取:@PathVariable
    · body(不常用)
    · form(不常用)
    dataType:参数类型,默认String,其它值dataType=“Integer”
    defaultValue:参数的默认值

    展开全文
  • Springfox

    2016-08-03 20:01:00
    compile 'io.springfox:springfox-swagger-ui:2.5.0' compile "io.springfox:springfox-swagger2:2.5.0" compile('org.springframework.boot:spring-boot-starter-web') } 转载于:...

    官网地址:http://springfox.github.io/springfox/

    build.gradle

    dependencies {
    	compile('org.springframework.boot:spring-boot-starter')
    	testCompile('org.springframework.boot:spring-boot-starter-test')
    	compile 'io.springfox:springfox-swagger-ui:2.5.0'
    	compile "io.springfox:springfox-swagger2:2.5.0"
    	compile('org.springframework.boot:spring-boot-starter-web')
    }
    

    转载于:https://my.oschina.net/maomaolsm/blog/726739

    展开全文
  • <div><p>Library: springfox-swagger2:2.7.0 Repository: https://jcenter.bintray.com/ From my gradle build log: Download ...
  • springfox2.2 DEMO

    2016-05-31 14:00:07
    springfox swagger 代码 maven版本
  • <p>The following artifacts could not be resolved: io.springfox:springfox-core:jar:2.0.0, io.springfox:springfox-spi:jar:2.0.0, io.springfox:springfox-spring-web:jar:2.0.0, io.springfox:springfox-...
  • New to Springfox

    2021-01-12 06:55:12
    m new to springfox, swagger, and maven and have recently taken over a project with an outdated version swagger-springmvc. I've got an idea of where to start with moving to springfox; however, the ...
  • <div><p>Hey, awesome lib! I have a question: I'm implementing the dependencies like this: <pre><code>xml <dependency> ...io.springfox<...springfox-boot-starter<...springfox/springfox</p></div>
  • SpringFox 学习

    千次阅读 2018-05-30 12:57:58
    Springfox与swagger的整合使用 前言 Swagger Swagger 是一个流行的API开发框架,这个框架以“开放API声明”(OpenAPI Specification,OAS)为基础,对整个API的开发周期都提供了相应的解决方案,是一个非常庞大的...

    官网源代码

    参考
    Springfox与swagger的整合使用

    前言

    Swagger

    Swagger 是一个流行的API开发框架,这个框架以“开放API声明”(OpenAPI Specification,OAS)为基础,对整个API的开发周期都提供了相应的解决方案,是一个非常庞大的项目(包括设计、编码和测试,几乎支持所有语言)。
    OAS本身是一个API规范,它用于描述一整套API接口,包括一个接口是GET还是POST请求啊,有哪些参数哪些header啊,都会被包括在这个文件中。它在设计的时候通常是YAML格式,这种格式书写起来比较方便,而在网络中传输时又会以json形式居多,因为json的通用性比较强。
    

    swagger-springmvc 发展出 SpringFox

    由于Spring的流行,Marty Pitt编写了一个基于Spring的组件swagger-springmvc,用于将swagger集成到springmvc中来。而springfox则是从这个组件发展而来,同时springfox也是一个新的项目。
    pringfox-swagger2依然是依赖OSA规范文档,也就是一个描述API的json文件,而这个组件的功能就是帮助我们自动生成这个json文件,我们会用到的另外一个组件springfox-swagger-ui就是将这个json文件解析出来,用一种更友好的方式呈现出来。
    

    使用

    Spring Boot 和 Swagger UI 集成
    Spring Boot 集成springfox后,默认就带了swagger-ui.html了,不需要此操作。如果想对界面进行定制,则需要先从 github swagger-ui 上下载Swagger-UI, 把该项目dist目录下的内容拷贝到项目的resources的目录public下,然后再修改(具体百度)。

    注解

    参考
    swagger注解 详细说明

    @Api

    用在类上,说明该类的作用

    @Api(value = "UserController", description = "用户相关api")

    @ApiOperation

    用在方法上,说明方法的作用

    @ApiOperation(value = "查找用户", notes = "查找用户", httpMethod = "GET", produces = MediaType.APPLICATION_JSON_UTF8_VALUE)

    @ApiImplicitParams

    用在方法上包含一组参数说明

    @ApiImplicitParam

    用在@ApiImplicitParams注解中,指定一个请求参数的各个方面
    paramType:参数放在哪个地方

    header–>请求参数的获取:@RequestHeader
    query–>请求参数的获取:@RequestParam
    path(用于restful接口)–>请求参数的获取:@PathVariable
    body(不常用)
    form(不常用)
    

    name:参数名
    dataType:参数类型
    required:参数是否必须传
    value:参数的意思
    defaultValue:参数的默认值

    @ApiImplicitParams({
            @ApiImplicitParam(name = "id", value = "唯一id", required = true, dataType = "Long", paramType = "path"),
    })

    @ApiResponses

    用于表示一组响应

    @ApiResponse

    用在@ApiResponses中,一般用于表达一个错误的响应信息
    code:数字,例如400
    message:信息,例如”请求参数没填好”
    response:抛出异常的类

    @ApiResponses(value = {
            @ApiResponse(code = 400, message = "No Name Provided")  
        })

    @ApiModel

    Swagger-core builds the model definitions based on the references to them throughout the API introspection.
    The @ApiModel allows you to manipulate the meta data of a model from a simple description or name change to a definition of polymorphism.
    描述一个Model的信息(这种一般用在post创建的时候,使用@RequestBody这样的场景,请求参数无法使用@ApiImplicitParam注解进行描述的时候)

    @ApiModel(value = "用户实体类")

    @ApiModelProperty

    描述一个model的属性

    @ApiModelProperty(value = "登录用户")
    @ApiIgnore //使用这个注解忽略这个接口
    展开全文
  • SpringBoot整合springFox

    2020-11-09 14:38:09
    SpringBoot整合springFox 1springFox介绍 springFox算是swagger优化。它可以跟据业务代码自动生成相关的api接口文档,尤其用于restful风格中的项目,开发人员几乎可以不用专门去维护rest api,这个框架可以自动为...

    SpringBoot整合springFox

    1 springFox 介绍

    springFox算是swagger优化。它可以跟据业务代码自动生成相关的api接口文档,尤其用于restful风格中的项目,开发人员几乎可以不用专门去维护rest api,这个框架可以自动为你的业务代码生成restfut风格的api,而且还提供相应的测试界面,自动显示json格式的响应。大大方便了后台开发人员与前端的沟通与联调成本。

    springfox本身只是利用自身的aop的特点,通过plug的方式把swagger集成了进来,它本身对业务api的生成,还是依靠swagger来实现

    主要的好处:

    1前后端分离开发

    2API文档非常明确

    3测试的时候不需要再使用URL输入浏览器的方式来访问Controller

    4传统的输入URL的测试方式对于post请求的传参比较麻烦

    5springfox基于swagger2,兼容老版本

    6可以减少开发人员的文档编写时间及统一管理

    7其他强大的功能

     

    2springboot 整合 springFox

    1首先创建一个 springboot工程

    2 首先在pom文件里 加入依赖

    <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.6.1</version>

           </dependency>

     

    加入之后 整个pom文件

    <!-- Inherit defaults from Spring Boot -->

    <parent>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-parent</artifactId>

    <version>2.1.5.RELEASE</version>

    </parent>

     

    <!-- Add typical dependencies for a web application -->

    <dependencies>

    <dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-web</artifactId>

    </dependency>

     

    <dependency>

    <groupId>io.springfox</groupId>

    <artifactId>springfox-swagger2</artifactId>

    <version>2.9.2</version>

    </dependency>

    <!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger-ui -->

    <dependency>

    <groupId>io.springfox</groupId>

    <artifactId>springfox-swagger-ui</artifactId>

    <version>2.9.2</version>

    </dependency>

    </dependencies>

    注意 :加入依赖 之后 如果 报错 请进行maven clear  maven install 

     

    之后 我们自己写一个config类上面加上两个注解@EnableSwagger2

    @Configuration 如下图

     

    最后 我们自己写一个 controller

    @Api(tags="测试类")

    @RestController

    public class DemoController {

     

     

     

    @ApiOperation("测试方法")

    @GetMapping("hello")

    public String hello() {

    return "success";

    }

     

    }

    3 访问页面

     

     

    我们可以看到 在我们 加入 springFox 依赖之后,我们项目的依赖管理里面出现了springfox-swagger-ui-2.6.1.jar,我们 点进去,在里面的 resource中 有一个html文件

    这就是 我们springfox 与swagger整合的进入页面

    访问页面地址http://localhost:8080/swagger-ui.html 

     

    我们发现 发圈的地方和我们 这两个注解写的内容一样

    @Api(tags="测试类") 用来注释类的错用

    @ApiOperation("测试方法") 用来注释 方法的作用

     

     

    接下来 我们 在demoController的方法中 加入参数和注解点击try it out

     

    @Api(tags="测试类")

    @RestController

    public class DemoController {

     

     

     

    @ApiImplicitParams({

    @ApiImplicitParam(name="username",value="用户名"),

    @ApiImplicitParam(name="password",value="密码")

    })

    @ApiOperation("测试方法")

    @GetMapping("hello")

    public String hello(String username,Stringpassword) {

    return "username="+username+"\tpassword="+password;

    }

     

     

    }

     

     

     

     

    我们 会发现参数的username 和password 通过@ApiImplicitParams 注解 也给加上了注释 接下来 我们 点击try it out 看下图 点击输入参数后 点击Execute

     

    在 @ApiImplicitParam(name="username",value="用户名"),后面还可以上上其他注解如下图

    可以自己点进去 具体查看

     

    接下来 我们 创建一个 user类 并且 在上面 加上注解

     

    @ApiModel

    public class User {

    @ApiModelProperty("用户名")

    private String username;

    @ApiModelProperty("密码")

    private String password;

    public String getUsername() {

    return username;

    }

    public void setUsername(String username) {

    this.username = username;

    }

    public String getPassword() {

    return password;

    }

    public void setPassword(String password) {

    this.password = password;

    }

     

    }

     

    我们 可以看到效果如下图

    会出现 一个Models 我们点进去

    我们 会发现 在bean类的属性家的注释 也显示了 ,方便  前后台对接,好了今天 我们先说到这里

    展开全文
  • Springfox Java库套件主要是为了能够让使用Spring系列项目编写的JSON APIs自动生成机器和人类可读的规范。Springfox的工作原理是在运行时检查一次应用程序,根据Spring配置、类结构和各种编译时java注解推断API语义...
  • I am using Springfox with Swagger2. My API has an input request which is an AbstractClass. The doc displays information about the "AbstractClass" but nothing about the "Concrete ...
  • 做过Java后端开发的同学应该都用使用过Springfox和Swagger,但我相信很多同学都对这两个工具的理解和使用都有问题。Swagger是什么根据官网的介绍,Swagger是一系列用于Restful API开发的工具,开源的部分包括:...
  • But springfox doesn't <p><strong>Problem Statement: I am trying to generate Swagger Specification for SpringMVC Rest project. Springfox is not supporting annotations (Spring 4.x annotations) in ...
  • <div><p>Hi springfox - great library! <p>Was trying out the updated integration with spring-data-rest to generate swagger UI for my project but hit the issue #1653. <p>This is my first ever open ...
  • Swagger和SpringFox

    2021-03-28 19:54:11
    Swagger和SpringFox 最受欢迎的API文档规范之一是OpenApi,以前称为Swagger。 它允许您使用JSON或YAML元数据描述API的属性。 它还提供了一个Web UI,它可以将元数据转换为一个很好的HTML文档。 此外,通过该UI,您...
  • springfox整合SpringMVC

    千次阅读 2017-05-07 14:16:04
    springfox整合SpringMVC
  • Springfox Swagger UI

    2020-06-19 19:53:38
    io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version> </dependency> <!-- https://mvnrepository.com/artifact/...
  • <div><ul>[ ] What version of the library are you using? Is it the latest version?</li></ul> <pre><code> <dependency> <groupid>io.springfox<...springfox/springfox</p></div>
  • 尝鲜新发布的Springfox 3.0.0(包含springfox-swagger2-3.0.0) 最近SpringFox3.0.0发布了,较SpringFox2.x.x有很大变动。可能大多数人SpringFox很陌生,但是看到下面的依赖估计就知道了 <dependency> <...
  • springfox-swagger2 springfox-swagger-ui

    千次阅读 2018-11-09 11:15:30
    用注解的方式写restful...io.springfox&lt;/groupId&gt; &lt;artifactId&gt;springfox-swagger2&lt;/artifactId&gt; &lt;version&gt;2.6.1&lt;/version&gt; &lt;/depe
  • springfox相关记录

    2019-11-04 10:46:42
    1.springboot为1.5.13版本时,springfox为2.6.0,难以生成正确的swagger文档,升级springfox为2.7.0即可 2.@ApiImplicitParam的dataType,需要是小写开头,不能是大写!!!想要实现返回值是数组或者list,加上...
  • springfox-swagger2-2.3.0.jar

    2021-05-12 09:37:45
    springfox-swagger2-2.3.0.jar
  • SpringFox and Eureka failing

    2021-01-12 06:50:59
    Recently I have enabled Swagger2 (SpringFox) for all the microservices. <p>As soon as I enabled swagger my microservices started registering to Eureka as "UNKNOWN" service and registering ...
  • <div><p>putting together some stuff that needs to happen to move and get a release out. We will need to co-ordinate on this as there will be some broad sweeping changes. ...springfox/springfox</p></div>
  • <div><p>This might be needed to prevent issues with multiple guava versions caused by springfox. Note that Springfox 2.8 should fix this. cc <ul><li>[ ] ...
  • springfox-swagger-ui 3.0之后就不会配置了 在3.0中,访问地址URL变了。 http://地址:端口/项目名/swagger-ui/index.html http://地址:端口/项目名/swagger-ui/ springboot maven项目引入 <dependency> &...
  • The latest released version is <a href="https://bintray.com/springfox/maven-repo/springfox/_latestVersion"> <img alt="Download" src="https://api.bintray.com/packages/springfox/maven-repo/springfox/...
  • [原创] SpringFox 3.0.0(包含springfox-swagger2-3.0.0)的发布与系统集成一. SpringFox 3.0.0 发布A. 此版本的亮点B. 兼容性说明C. 此版本已修补的漏洞二. 系统如何集成?A. swagger2-3.0 maven依赖加入,非常方便...
  • SpringFox 初体验

    2018-08-14 15:17:00
    1、什么是SpringFox?   1.1 Springfox 是一个开源的API Doc的框架, 它的前身是swagger-springmvc,可以将我们的Controller中的方法以文档的形式展现。官方定义为: Automated JSON API documentation for API'...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,399
精华内容 2,159
关键字:

Springfox